【问题标题】:Javascript, function chaining and events?Javascript、函数链和事件?
【发布时间】:2023-03-07 15:37:02
【问题描述】:

深入研究 NodeJS 我遇到了(fab),这给我留下了深刻的印象。在观看了 Jed 的演示文稿后,我了解了函数链接的工作原理,但我还有一个问题:如果发生事件可以(但不是必须)发生的情况,例如 HTTP 侦听器,函数链接如何工作吗?

例如,如果我有以下模式:

(listen, 8080)
    (write)
        ('test1')
        ('test2')
    ()
()

如果 HTTP 请求字符串“test1”和“test2”被写入客户端,我将如何编写监听函数?

【问题讨论】:

    标签: javascript functional-programming node.js floating-action-button


    【解决方案1】:

    关于javascript中异步调用编排问题的一般解决方案,请参阅https://github.com/tatumizer/mesh。它基于每个函数的输入和输出参数的知识自动进行并行化和链接。有非常详细的 README 文件,有很多例子。

    【讨论】:

      【解决方案2】:

      我不确定它是如何在 (fab) 中实现的,但是像您解释的那样可以使用承诺和延迟对象来实现。请参阅 Kris Kowal 的 CommonJS, I Promise 演讲。另请参阅维基百科上的 Futures and promises

      【讨论】:

      • 感谢您的链接,我确保我会观看视频。至于(fab),通过源码看来是纯函数链,也就是说没有promise或者其他机制。就我设法完成整个事情而言,流似乎已暂停并重新启动。这也是杰德在他的演讲中所说的。鉴于我仍然不明白实现将如何工作,因为在我上面的示例中,解释器会立即通过 - 没有“在某个时候停止并等待事件”的选项。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-10
      • 1970-01-01
      • 2013-04-07
      相关资源
      最近更新 更多