【发布时间】:2017-05-05 14:53:42
【问题描述】:
我正在尝试以“按钮”示例 (http://elm-lang.org/examples/buttons) 为例,并将其从另一个模块中导入,该模块将在同一页面上显示其中的几个。
恐怕我脑子里还在想组件,但我还是想分享一下。
我创建了 Main.elm,它加载了稍微修改过的按钮示例 (Buttons.elm)。
在 Main.elm 中,我有一个 Buttons.Model 列表,用于生成按钮列表。
我现在卡住了,因为我不知道如何从 Main.elm 中的 Buttons.Msg 获取必要的信息
查看代码:
$ git clone https://github.com/lucamug/elm-multiple-buttons.git
$ cd elm-multiple-buttons/
$ elm-package install
$ elm-reactor
打开
-- 解决方案
正如 Chad Gilber 在接受的答案中指出的那样,问题出在这一行:
(List.indexedMap (\position buttons -> Html.map Tag (Buttons.view position buttons)) model.buttonsList)
这是正确的版本
(List.indexedMap (\position buttons -> Html.map (Tag position) (Buttons.view buttons)) model.buttonsList)
如果您对此实现感兴趣,可以在这篇文章https://medium.com/@l.mugnaini/recycling-elm-code-transforming-it-in-a-module-4946d5ccd3cd中找到更多详细信息
【问题讨论】:
-
请在问题中粘贴需要考虑的关键代码
标签: functional-programming elm