小编mmm*_*ceo的帖子

关于Init的Elm Http请求

我对榆树很新,但慢慢熟悉它.我正在做一些简单的Http请求,它在各个方面都很成功(我得到要显示的数据等)

目前我只能让我的fetchData触发onClick,我想在init上初始化它,但是我无法绕过这个问题.

....这是我的fetchData函数:

fetchData : Cmd Msg
fetchData =
  Http.get repoInfoListDecoder "http://example/api"
    |> Task.mapError toString
    |> Task.perform ErrorOccurred DataFetched
Run Code Online (Sandbox Code Playgroud)

当前由onClick事件在视图中触发:

.....
, button [ onClick FetchData ] [ text "Load Data" ]
.....
Run Code Online (Sandbox Code Playgroud)

我想避免通过按钮请求数据,而是希望在初始化应用程序时加载数据.这是我的初始:

init =
  let
    model =
      { message = "Welcome", repos = [] }
  in
    model ! []
Run Code Online (Sandbox Code Playgroud)

还有我的更新(有点剥离...例如sakes):

update : Msg -> Model -> (Model, Cmd Msg)
update msg model =
  case msg of
    NoOp ->
      model ! []
    ...........
    FetchData ->
      { model | message="hi" …
Run Code Online (Sandbox Code Playgroud)

elm

10
推荐指数
1
解决办法
1758
查看次数

标签 统计

elm ×1