完整的代码在ellie:https://ellie-app.com/hC86PYBMda1/0
问题是,当菜单所针对的模型字段在选择时更新时,发送到更新的Msg
的全部效果在发送CloseMenu
或其他OpenMenu
SelectMsg
之前不会执行。
更新功能的相关部分:
update msg model =
case msg of
SelectBenzo searchMsg ->
(benzoUpdate searchMsg model, Cmd.none)
...
调用以下函数:
benzoUpdate searchMsg ({meds} as model) =
{ model | meds = { meds | benzo = Input.updateSelection searchMsg meds.benzo }
, selectedMed = case Input.selected meds.benzo of
Nothing -> NoneChosen
Just benzo -> Stage1 benzo
} |> updateCurrentMedDose
updateCurrentMedDose model = { model | dose = (dosing (Maybe.withDefault 0 model.ptWt) model.selectedMed) }
我相信围绕
这种事情的样式元素存在一个已知问题。我认为这就是公开键控库的原因。尝试使用它而不是直接使用元素。
http://package.elm-lang.org/packages/mdgriffith/style-elements/4.3.0/Element-Keyed