【发布时间】:2016-08-20 09:00:06
【问题描述】:
在Elm 中,特别是Elm Architecture,当应用程序首次启动时,init 函数可以返回执行的Cmd Msg。我们可以使用它来发送 http 请求或通过 Elm ports 向原生 Javascript 发送消息。
我的问题是,如何发送多个应该在init 中执行的命令?
例如,我可以这样做:
init : (Model, Cmd Msg)
init =
(Model "" [], (Ports.messageToJs "Hello JS"))
我可以这样做:
url : String
url =
"http://some-api-url.com"
...
fetchCmd : Cmd Msg
fetchCmd =
Task.perform FetchError FetchSuccess fetchTask
init : (Model, Cmd Msg)
init =
(Model "" [], fetchCmd)
如何从init 同时返回两个命令?
我见过Task.sequence 甚至Task.parallel,但它们似乎很适合运行多个任务,而不是专门的命令。
【问题讨论】:
标签: javascript elm