onInput参数失败(由Elm n00b提供)

onInput参数失败(由Elm n00b提供),elm,Elm,我正在基于它们的特性使用Elm进行实验,并且在函数参数声明方面遇到了一个问题 基本上我只是在教程代码中提取了一个函数。它在没有函数声明的情况下运行良好,但在包含它时失败 该守则的实质是: type Msg = Name String | Password String view : Model -> Html Msg view model = div [] [ myInput "text" "Name" Name ] myInput : String -&g

我正在基于它们的特性使用Elm进行实验,并且在函数参数声明方面遇到了一个问题

基本上我只是在教程代码中提取了一个函数。它在没有函数声明的情况下运行良好,但在包含它时失败

该守则的实质是:

type Msg
  = Name String
  | Password String

view : Model -> Html Msg
view model =
  div []
    [ myInput "text" "Name" Name
    ]

myInput : String -> String -> Msg -> Html Msg
myInput type__ label handle =
  input [ type_ type__, placeholder label, onInput Name ] []
错误消息是:


函数
myInput
的第三个参数导致不匹配

47 | myInput“文本”“名称”名称 函数
myInput
希望第三个参数为:

味精

但事实是:

字符串->消息

提示:函数似乎还需要一个参数



理想情况下,我还希望onInput参数是myInput中声明的名为“handle”的参数。

myInput的类型签名不正确。构造函数
Name
只有一个参数,这意味着当用作函数时,它的签名是
(String->Msg)
。这就是您应该用于
句柄
参数注释的内容

myInput:String->String->(String->Msg)->Html Msg
myInput类型\标签句柄=
输入[类型,占位符标签,输入句柄][]

myInput的类型签名不正确。构造函数
Name
只有一个参数,这意味着当用作函数时,它的签名是
(String->Msg)
。这就是您应该用于
句柄
参数注释的内容

myInput:String->String->(String->Msg)->Html Msg
myInput类型\标签句柄=
输入[类型,占位符标签,输入句柄][]

这正是我所需要的,以使这项工作,并了解有关数据构造函数和感谢!这正是我所需要的工作,并了解数据构造函数和感谢!