Elm 中的类型推断
Type inference in Elm
我刚开始学习 Elm,但遇到了类型注释问题。
此代码有效:
viewInput : String -> Html msg
viewInput myText =
div [ style [("color","red")] ] [ text myText ]
这个引发编译器异常:
viewInput : String -> Html msg
viewInput myText =
input [ type' "text", placeholder myText ]
错误是
-- TYPE MISMATCH ------------------------------------------------------ form.elm
The type annotation for `viewInput` does not match its definition.
62| viewInput : String -> Html msg
^^^^^^^^^^^^^^^^^^
The type annotation is saying:
String -> Html a
But I am inferring that the definition has this type:
String -> List (Html a) -> Html a
Detected errors in 1 module.
我认为你只是在最后少了一些括号...
您的代码应该是
viewInput : String -> Html msg
viewInput myText =
input [ type' "text", placeholder myText ] []
这是因为 input
函数,正如 div
所做的那样,需要输入两个列表,一个用于属性,一个用于其他 Html
它包含的部分
我刚开始学习 Elm,但遇到了类型注释问题。
此代码有效:
viewInput : String -> Html msg
viewInput myText =
div [ style [("color","red")] ] [ text myText ]
这个引发编译器异常:
viewInput : String -> Html msg
viewInput myText =
input [ type' "text", placeholder myText ]
错误是
-- TYPE MISMATCH ------------------------------------------------------ form.elm
The type annotation for `viewInput` does not match its definition.
62| viewInput : String -> Html msg
^^^^^^^^^^^^^^^^^^
The type annotation is saying:
String -> Html a
But I am inferring that the definition has this type:
String -> List (Html a) -> Html a
Detected errors in 1 module.
我认为你只是在最后少了一些括号...
您的代码应该是
viewInput : String -> Html msg
viewInput myText =
input [ type' "text", placeholder myText ] []
这是因为 input
函数,正如 div
所做的那样,需要输入两个列表,一个用于属性,一个用于其他 Html
它包含的部分