问题标签 [fantasyland]

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 回答
105 浏览

javascript - 操作两个二选一

假设您有以下代码:

addOnefunc1or结合func2比较容易:

但是如何add使用func1andfunc2作为参数调用呢?

ps 我知道 ramda 提供了一个add功能。将该示例视为对现实世界问题的抽象。

0 投票
1 回答
46 浏览

reactjs - 如何在 React 中使用 daggy 进行条件渲染

假设我有四个组件,我想根据type使用 daggy 的道具有条件地渲染它们:

在此示例中, typeprop 值可以是字符串a, b,cd

是一个有效的代码框示例

这按预期工作,但似乎有点复杂,我觉得我在这里遗漏了一些东西,我已经阅读了文档,但我无法真正理解如何将它应用于这个简单的示例。

我在互联网上找到的示例对于我想要实现的目标来说太复杂了,这只是根据道具使用 daggy 渲染组件。

这是一个使用 daggy 进行条件渲染的示例,不幸的是它使用了一个额外的库来实现这一点,它似乎比我的示例更复杂。

如果有另一种方法可以在不使用 daggy 的情况下以类似的方式实现条件渲染,它也可以解决我的问题。

有什么建议么?

0 投票
1 回答
140 浏览

javascript - 带有 FP 类型的 Ramda

最近我决定从 lodash 切换到 ramda,以使用编写逻辑的函数式方式。我喜欢它!在对 FP 进行了深入研究之后,我发现它不仅是关于方便的纯/无点实用程序(ramda),而且更多的是关于复杂的(至少对我而言)数学抽象(幻想世界)。我没有完全理解,但是 Either 和 Task 模式看起来很方便。问题是我不确定如何将它与 ramda 实用程序合并。我知道 ramda-fantasy,但它不再维护。Ramda-fantasy 建议的库与 ramda-fantasy 的工作方式不同。有了关于 Monads/Monoids/Functors 类型的所有这些新信息,我完全迷失了。

例如,这个约定是什么?

如果我决定一路切换到 Monads,我是否不需要 ramda?