gpt4 book ai didi

javascript - 在 Elm 中同时运行两个命令

转载 作者:IT王子 更新时间:2023-10-29 03:22:43 28 4
gpt4 key购买 nike

Elm 中,特别是 Elm Architecture当应用程序首次启动时,init 函数可以返回执行的 Cmd Msg。我们可以使用它来发送 http 请求或通过 Elm ports 向 native 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 但它们似乎适合运行多个任务,而不是特定的命令。

最佳答案

使用 Platform.Cmd.batch ( docs ):

init : (Model, Cmd Msg)
init =
( Model "" []
, Cmd.batch [fetchCmd, Ports.messageToJs "Hello JS")]
)

关于javascript - 在 Elm 中同时运行两个命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39052337/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com