gpt4 book ai didi

elm - 如何在不包含标签的情况下将联合类型传递给函数

转载 作者:行者123 更新时间:2023-12-01 00:39:47 25 4
gpt4 key购买 nike

玩榆树 checkboxes example .我试图在 view 中移动以下重复代码

, label []
[ br [] []
, input [ type' "checkbox", checked model.underline, onCheck Underline ] []
, text "underline"
]

成一个单独的函数并使用它三遍。到目前为止我有...
makeLabel : String -> Bool -> Msg -> Html Msg
makeLabel caption bool msg =
label []
[ br [] []
, input [ type' "checkbox", checked bool, onCheck msg ] []
, text caption
]

我会像这样使用它
makeLabel "underline" model.underline Underline

但后来我收到以下错误
Function `makeLabel` is expecting the 3rd argument to be:

Msg

But it is:

Bool -> Msg

当用户更改复选框时,如何将正确的操作传递给我的 makeLabel 函数?
 type Msg
= Red Bool
| Underline Bool
| Bold Bool

我不明白如何将联合类型(下划线)传递给函数而不包含标签(下划线 bool )

最佳答案

问题在于您的类型签名,而不是代码。尝试这个:

 makeLabel : String -> Bool -> (Bool -> Msg) -> Html Msg

关于elm - 如何在不包含标签的情况下将联合类型传递给函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38288963/

25 4 0