这是我要修复的最后一个错误。它最初是
Task.perform HTTPError SetPeople (Http.get (Json.list decodePerson) peopleUrl)
但我已经完成了你在下面看到的内容。我认为我需要使用尝试而不是执行,但后来处理Result
,我认为这将需要更大的重构。我不知道我是全新的。
The 2nd argument to function `perform` is causing a mismatch.
87| Task.perform SetPeople (Http.get peopleUrl (Json.list decodePerson)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Function `perform` is expecting the 2nd argument to be:
Task.Task Never (List Person)
But it is:
Http.Request (List Person)
答案 0 :(得分:3)
0.18版本的HTTP请求绕过了对任务的直接需求,并允许您直接创建Cmd msg
。您的代码可能会被重写为:
Http.get peopleUrl (Json.list decodePerson)
|> Http.send SetPeople
这假定您的Msg
现在定义为
type Msg
= ...
| SetPeople (Result Http.Error (List Person))