问题标签 [elm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
229 浏览

elm - 如何将点击信号传播到 Elm 中的模型更新?

我正在用 Elm 编写一个游戏,在这个游戏中,有一个按钮,按下时应该将游戏板重置为其初始状态。但是,我不明白如何将按钮单击信号传播到板模型的更新功能。在下面的代码中,我刚刚将单位值传递给stepBoard但我不能用它做太多所以我该如何解决它?

0 投票
1 回答
687 浏览

elm - 相互依赖的信号

赤裸裸的问题:

有没有办法在 Elm 中定义一对相互依赖的信号?

前言:

我正在尝试编写一个小型 Cookie-clicker 风格的浏览器游戏,玩家在其中收集资源,然后用它们购买自主资源收集结构,这些结构在购买时会变得更加昂贵。这意味着三个相关信号:(gathered玩家收集spent了多少资源),(玩家已经花费了多少资源)和cost(升级成本)。

这是一个实现:

这编译得很好,但是当我将它嵌入到一个带有适当按钮的 HTML 文件中以将消息发送到上面的适当端口时,我得到了错误

问题似乎是,如所写,cost取决于canAfford,取决于balancespent取决于 ,cost再次取决于。

如果我修改成本线使得

它开始按预期工作(除了允许玩家花费负资源,这是我想避免的)。

有任何想法吗?

0 投票
1 回答
211 浏览

elm - Elm - Text.style 导致“无法读取属性 'arity'”错误

一旦我尝试设置 a 的样式Text,我就会收到此错误:

开发者控制台提供TypeError: fun is undefined.

Elm 0.12 和http://elm-lang.org/try 浏览器:Chrome、Firefox

如果您更改main为:

文本按预期呈现,没有样式。

我在 Elm 网站上找不到任何示例Text.style- 我做错了什么还是这是一个错误?

0 投票
4 回答
1561 浏览

javafx - 是否可以将马里奥示例从 Elm 转换为纯 JavaFX 或 JavaFX+RxJava,同时保留 Elm 的高级抽象?

我最近看到了这个关于 Elm 反应式编程的有趣演示。

这让我想知道用于实现马里奥游戏的语言结构(在显示的演示文稿中,以及在下图中)是否可以映射到纯 JavaFX 或结合 RxJava 的 JavaFX 中的类似高级语言结构?

换句话说,是否有可能在单独的 JavaFX 或 JavaFX+RxJava 中使用相同的概念抽象(即时间相关值)来表达在 Elm 中实现的马里奥游戏?

因此,如果有经验的 1)JavaFX 程序员或有经验的 2)JavaFX+RxJava+Functional 程序员想要将马里奥游戏从 Elm 移植到 1)JavaFX 或 2)JavaFX+RxJava,那么哪个程序员可以通过使用类似的高Elm 中使用的级别抽象?

我想到的 JavaFX 的抽象是绑定,而 JavaFX+RxJava 的抽象是绑定+Observables/Subjects/Subscription。

在此处输入图像描述

0 投票
1 回答
186 浏览

haskell - 为 elm 服务器编译 aeson-pretty 时出错

我正在尝试安装elm-server在由于aeson-pretty编译错误而失败的 x86_64 linux 机器上。我将不胜感激修复此错误的帮助。谷歌搜索错误并没有太大帮助。所以,我在这里伸出援手。

Cabal 试运行输出首先是我正在尝试做的事情 - 它显示了哪些依赖项将发生变化:

在实际运行期间编译时出错aeson-pretty- 我将感谢有关如何解决此问题的指针(我已从下面的日志中删除了绝对文件系统路径以删除工作服务器的一些识别信息):

继续运行ghc-pkgtemplate-haskell我得到了这个:

运行ghc-pkg检查,我得到了这个(只是为了验证它没有template-haskell损坏)- 损坏是有道理的,Elm因为它需要重新安装elm-server

所以,看起来我需要对 cabal 包进行自己的修改,elm-server以修复对template-haskell. 为此,我需要帮助弄清楚如何根据 cabal 配置调试上述错误。

如果有人想知道沙盒,我不想使用cabal sandbox,因为工作服务器上的磁盘配额限制。elm如果可以获取并elm-server安装,我可以破坏现有的软件包。

0 投票
1 回答
179 浏览

frp - 如何动态创建文本字段

假设我有这样的记录:

我想动态创建一个 UI 来填充图书馆记录。我想要一个“添加”按钮,它将为每本书创建两个文本字段。

任何文本字段内的编辑将立即在记录结构中同步。

我怎么能用 elm 0.12 做到这一点?

0 投票
4 回答
3739 浏览

haskell - FRP - 事件流和信号 - 仅使用信号会丢失什么?

在经典 FRP 的最新实现中,例如反应香蕉,有事件流和信号,它们是阶跃函数(反应香蕉称它们为行为,但它们仍然是阶跃函数)。我注意到 Elm 只使用信号,并没有区分信号和事件流。此外,reactive-banana 允许从事件流到信号(已编辑:虽然它不被认为是好的做法,但可以使用 reactimate 对行为采取行动),这意味着理论上我们可以应用所有事件流通过首先将信号转换为事件流,应用然后再次转换来对信号/行为进行组合器。所以,考虑到它通常更容易使用和学习一种抽象,分离信号和事件流有什么好处?仅使用信号并将所有事件流组合器转换为对信号进行操作是否会丢失任何东西?

编辑:讨论非常有趣。我自己从讨论中得出的主要结论是,相互递归定义(反馈)和输出依赖于两个输入(一个行为和一个事件源)都需要行为/事件源,但只有在一个输入时才会导致动作其中有变化 (<@>)。

0 投票
1 回答
123 浏览

elm - 如何制作 Signal x -> x 类型的函数?

我想创建一个具有这种类型的函数:

举个例子

我可以获取一个简单地接受信号 x 并返回 x 的函数示例吗?

0 投票
1 回答
136 浏览

elm - 为什么这个 Elm 代码不起作用?(提供预期输出的示例)

我正在尝试制作一个输出以下模式的榆树程序:

这是我的榆树代码:

这就是我认为代码应该说的

然而,这不是输出。我想我对信号如何更新感到困惑......

0 投票
3 回答
18461 浏览

list - 如何在榆树中按索引获取列表项?

我有一个列表,现在我想要第 n 个项目。在 Haskell 中我会使用!!,但我找不到它的 elm 变体。