来自反应,我正在学习理解榆树.
在Todomvc示例代码中,有以下代码段:
-- How we update our Model on a given Msg?
update : Msg -> Model -> ( Model, Cmd Msg )
update msg model =
case msg of
NoOp ->
model ! [] <-- What is this?
Run Code Online (Sandbox Code Playgroud)
我(我想)理解的是,该update函数接受一个msg类型Msg和一个model类型Model,并返回一个包含a Model和a 的元组Cmd Msg.
但是我应该如何阅读return语句?
model ! []
Run Code Online (Sandbox Code Playgroud)
这句话是什么意思?返回"模型[某事]空列表"?
我在文档中遗漏了哪些内容?(谷歌搜索"榆树!"没有让我走得远:)
Cha*_*ert 62
更新榆木0.19
Elm 0.19删除了感叹号操作符.您现在必须手动构造元组,如(model, Cmd.none).
榆木0.18的原始答案
感叹号model ! []只是一个简写函数(model, Cmd.batch []),它是典型update语句返回的类型.它在这里定义
请注意,此语法将在下一版本的Elm(0.19)中消失,因此不要养成使用它的习惯;-)
你今天可以使用,用0.19:
update : Msg -> Model -> ( Model, Cmd Msg )
update msg model =
case msg of
NoOp ->
(model, Cmd.none)
Run Code Online (Sandbox Code Playgroud)