0
私はelmでGETリクエストを実行しようとしています。この関数は、実行しようとしているTaskを返します。残念ながら、私の参考資料はElm 0.17です。私が収集したのは、Task.performのサインタが変更されたことです。Elm 0.18 Httpリクエスト
fetchTasks: MyModel -> String -> Platform.Task Http.Error (Dict String MyTask)
fetchTasks model apiUrl=
{ method = "GET"
, headers = [ Http.header "Content-Type" "application/json"
, Http.header "Authorization" model.token ]
, url = apiUrl
, body = Http.emptyBody
, expect = Http.expectJson (dict taskDecoder)
, timeout = Nothing
, withCredentials = False }
|> Http.request
|> Http.toTask
fetchTaskCmd : MyModel -> String -> Cmd Msg
fetchTaskCmd model apiUrl =
Task.perform AuthError GetTasksSuccess <| fetchTasks model apiUrl
これは私のGET要求とタスクを実行するコマンドの機能です。 AuthErrorとGetTasksSuccessはどちらも私が定義したMessagedです。私は仕事のための新しいsignaturが
perform : (a -> msg) -> Task Never a -> Cmd msg
で行うことエルムドキュメントで読んだことがどのような私は私のコマンドが作業を取得するために実装するためにしなければならないのですか?
はい、コンパイラは、戻り値がCmd msgではなく、Cmd Msgからのものであると示しています。また、 – Essometer
の後に私は助けへの私の答えを更新しました –
ダブル投稿のため申し訳ありません、私の元のコメントを編集することはできません。 また、fetchTaskCmdコマンドを送信した後、解析されたJSONはどこにありますか?それとも、結果を文字列形式のgetだけで取得するのですか? – Essometer