此代码在没有类型注释的情况下工作,但我无法弄清楚如何注释formView
函数。我也不知道这是一个通用函数还是实际调用的函数?
import Html exposing (..)
import Html.Attributes exposing (..)
import Html.Events exposing (..)
type Msg = EmailChanged String | PasswordChanged String
formView : String -> msg -> Html Msg
formView label msg = div [] [text (label ++ ": "), input [onInput msg] []]
main = div [] [formView "Email" EmailChanged, formView "Password" PasswordChanged]
使用Elm REPL向我展示了@JörgWMittag建议的类型推断器
由类型推断器推断的正确类型注释是:
formView : String -> (String -> msg) -> Html msg