ElmでpreventDefaultなフォームを作る

ElmでpreventDefaultなフォームを作る:

Elmのバージョンは0.19

以下の onSubmitWithPrevented のような関数を定義すればよい。

import Json.Decode as JD 
 
-- 省略... 
 
onSubmitWithPrevented msg = 
    Html.Events.custom "submit" (JD.succeed { message = msg, stopPropagation = True, preventDefault = True }) 
 
view : Model -> Browser.Document Msg 
view model = 
  { 
    title = "Simple form example", 
    body = [ 
      Html.form [onSubmitWithPrevented StartsLoggingIn] [ 
        div [] [ 
          label [] [ 
            text "email:", 
            input [type_ "email", placeholder "Your email", value model.newLogin.email, onInput UpdatesLoginEmail] [] 
          ] 
        ], 
        div [] [ 
          label [] [ 
            text "password:", 
            input [type_ "password", placeholder "Your password", value model.newLogin.password, onInput UpdatesLoginPassword] [] 
          ] 
        ], 
        div [] [ 
          button [] [text "login"] 
        ] 
      ] 
    ] 
  } 
参考: https://stackoverflow.com/questions/52541501/why-cant-i-use-onwithoptions-in-elm-0-19

コメント

このブログの人気の投稿

投稿時間:2021-06-17 05:05:34 RSSフィード2021-06-17 05:00 分まとめ(1274件)

投稿時間:2021-06-20 02:06:12 RSSフィード2021-06-20 02:00 分まとめ(3871件)

投稿時間:2020-12-01 09:41:49 RSSフィード2020-12-01 09:00 分まとめ(69件)