问题标签 [reflex-dom]
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.
css - 使用 Ob 和 reflex 导入 CSS 文件时出现静态文件错误
我想使用方尖碑让两个 div 并排浮动。为此,我已经问过这个问题(使用方尖碑时将 css 文件放在哪里)。这提供了我应该将我的东西放在静态并添加静态@filename 的答案。但是,这种方法会导致错误。
您可以在下面看到 frontend/src/Frontend.hs 中使用的前端函数的最小示例。
给出了以下错误消息:无法推断(StaticFile“css/cssTest.css”)因使用“静态”而引起。
haskell - 如何渲染列表的动态(`Dynamics t [a]`)?
我可以绘制元素Dynamic t Item
但不知道如何绘制元素Dynamic t [Item]
检查类型ghci
似乎是一个有效的组合
但是尝试运行时出错
haskell - 无法摆脱 reflex-dom 中的递归
代码可以编译,但运行时会陷入无限递归循环。循环进入的位置并不明显,尤其是在使用递归 do 或 monadfix 时。尝试在浏览器中调试时,它在 rts.js 行 6086 处的 fixIO 中找到循环评估
haskell - 由总和类型值填充的反射下拉菜单
我正在关注本教程,以下示例来自该教程:https ://github.com/hansroland/reflex-dom-inbits/blob/master/tutorial.md
我想constDyn countries
用一个函数替换上面的函数,该函数采用 sum 类型的类型 (?) 构造函数并将它们用作下拉列表的元素。
例如,如果我有以下总和类型,我希望下拉菜单显示“锻炼”和“跑步”。如果我稍后添加,例如,Solo_WatchPracticeTape
下拉菜单会自动添加“观看练习磁带”。
我推断我需要创建一个函数,将每个 sum 类型与一个字符串相关联,然后创建另一个函数,将所有这些东西变成可以被constDyn
. 但我看不到如何实现这一点。
编辑:
我正在尝试这个,但它仍未完成:
但我仍然不明白如何constDyn
在bodyElement
函数中输入它。
haskell - 在 Reflex-DOM 中使用动态函数时的上下文/签名不匹配
我能够编译这个下拉列表:
但是我在 Obelisk 的框架内工作,所以我尝试了一些修改以将小部件放入那里指定的结构中:
但我收到此错误:
错误信息很清楚,但是:1.我不知道这是否是正确的方法和2.如果是正确的方法,我该如何将最后let result e = ...
一位放入一个do
块中?
或者,当我将函数移到result
函数之外时frontend
,会出现以下错误:
haskell - Reflex-FRP 中的计数器小部件
我正在尝试在 Reflex 中制作一个具有以下品质的计数器小部件:
它的最小值为 0 - 在 0 时点击“减量”不会导致任何事情发生。
(已解决)增量按钮在减量按钮的右侧。
它应用了 Bulma CSS 样式。
这是我目前拥有的代码:
结果是这样的:
当我尝试通过将这些按钮翻转为 values: 来交换按钮时(+ 1) <$ evIncr, (+ (-1)) <$ evDecr
,它对按钮的位置完全没有影响。(即增量保留在左侧。)
当我尝试像这样应用 Bulma 代码时:
它出于某种原因复制了按钮,并将现有的(丑陋的)按钮放置在 Bulma 小部件内(编辑:复制问题已解决,但不是“按钮内的按钮”问题):
haskell - 如何安装 ghcjs 8.8 或 8.10?
我想用 reflex-dom 生成一个 HTML / JS 页面(仅客户端,前端)。但是,我使用了单例包(2.6),它似乎无法使用 ghcjs 或 ghc 8.6.5 进行编译(单例 2.5.1,已损坏未修补)。因此,反射平台解决方案、反射石或同等产品对我没有帮助。
我看到可以通过 haskell.nix安装 ghcjs 8.8 或 8.10 ,但我没有找到如何安装。
我该怎么做?或者,有没有办法将 GHCJS(或反射平台解决方案)与最近的包(需要 ghc 8.8 或 +)一起使用?有没有办法将 ghcjs-8.8 或 8.10 与 reflex-platform 一起使用?
haskell - 即使值没有改变,我是否必须担心动态触发?
使用reflex-dom
我发现自己编写了以下代码:
wheredynMaybeShowNumbers :: Dynamic t (Maybe Bool)
触发,每当一个键被按下或释放,但它只有一个值不等于Nothing
,当两个特定键之一改变状态(即按下或未按下)时。Just False
它在两个键之一被释放时触发。
原因是我展示了一个虚拟键盘,它通常取决于按下或释放键的任何事件。对于dynMaybeShowNumbers
,我只是过滤掉了需要按住以显示虚拟小键盘的两个相关键。
我可以轻松编写dynShowNumbers :: Dynamic t Bool
不依赖于Dynamic t (Maybe Bool)
上述内容的更简单的代码。
然而:
在这种情况下,每当按下任何键时,我都会被dynShowNumbers
解雇:
而上面的代码会导致
对于相同的输入。
我觉得,我需要上面的代码来避免动态重新渲染我的虚拟键盘——即使没有任何变化。
但是上面的行是好的做法吗?库中是否有有效的功能(找不到)?它类似于从列表中删除重复项的任务。