Ich habe festgestellt, dass in der Führung:Was bedeutet eine Funktion mit 2 Werten auf der rechten Seite? (Modell -> Html msg)
viewValidation : Model -> Html msg
viewValidation model =
let
(color, message) =
if model.password == model.passwordAgain then
("green", "OK")
else
("red", "Passwords do not match!")
in
div [ style [("color", color)] ] [ text message ]
Also das ist eine Funktion, die die Model
nimmt. Html msg
sieht für mich normalerweise so aus, als würden wir die Funktion Html
mit dem Argument msg
aufrufen.
msg
scheint jedoch keine Rolle in einem anderen Teil der viewValidation
Funktion zu spielen. Was bedeutet es und wofür ist es in diesem Fall?
Obwohl, wenn ich mich nicht irre, 'viewValidation' keine' msg' auslöst, richtig? – MoeSattler
ja, du hast Recht. Da "List" mit einem Parameter definiert werden muss (Sie könnten 'List a' verwenden), selbst wenn es leer ist, muss' Html' mit einem Parameter definiert werden, auch wenn dieser Parameter nicht verwendet wird. Wenn Sie möchten, können Sie 'Html a' verwenden. – marcosh
Auch wenn es nichts zurückgibt, können Sie Html() verwenden. Siehe: http: // Stackoverflow.com/questions/37257407/elm-how-to-create-a-view-that-nicht-return-msg-in-0-17 – afcastano