我正在尝试制作一个通用模式,该模式将要显示的文本和要onClick
在接受按钮上发送的事件作为参数。
有一个取消按钮,它与接受按钮共享隐藏功能。
所以我尝试onClick
在接受时发送 2 个事件。一个用于接受逻辑,一个用于隐藏逻辑。这不起作用,只是第一个事件起作用了。
我尝试了另一种策略,隐藏事件可能有一个事件
OnHideModal (Maybe Msg)
,因此模态在接受之前合并两个事件,并OnHide
隐藏模态并发送内部事件以继续处理。这在我看来太重了,因为如果您有 3 个或更多逻辑事件,那么您的所有事件都必须有另一个Maybe Msg
. 而且我很难Cmd Msg
对内部事件做出反应。
人们似乎建议做一个HideAndLogic
事件,但这会导致大量复制和粘贴隐藏代码,每个逻辑一个。另外,逻辑将与隐藏逻辑联系在一起,这将使其更难理解。如果我想为逻辑发送一个事件而不隐藏任何内容,我将不得不制作另一个复制第一个逻辑一半的事件。这违背了基本的编程良好实践,所以我认为有些人可能已经找到了更好的方法。一种允许这些单独的逻辑即使在祖先事件中也能真正分离的方法。
使用榆树 0.18