bacon.js相关内容

函数响应式编程相对于事件监听器的优势

我听说过很多关于函数式反应式编程的内容,并决定看看有什么大不了的.通过 bacon.js 文档,似乎主要区别在于,我没有在组件上设置事件侦听器,而是在其上创建事件流,并将事件处理程序传递到流中.换句话说,我真正做的只是将事件处理程序从组件移动到事件流.是这样吗?如果是这样,这样做的最大优势是什么? 解决方案 是吗? 没有.这是关于拥有事件流.最后你仍然会为它们附加监听器来执行效果 ..

Node.js Streams 与 Observables

在了解了 Observables 之后,我发现它们与 Node.js 流.两者都有一种机制,可以在新数据到达、发生错误或没有更多数据 (EOF) 时通知消费者. 我很想了解两者之间的概念/功能差异.谢谢! 解决方案 Observables 和 node.js 的 Streams 都允许您解决相同的底层问题:异步处理一个值序列.我认为,两者之间的主要区别与促使其出现的背景有关.该上下文 ..
发布时间:2022-01-01 22:25:34 前端开发

将流映射到惰性承诺流

我有一个我有一个数字流,我必须使用承诺将它们变成一个帖子流.我想懒惰地这样做.所以如果我从帖子流中做 .take(1) ,它只会把一个数字变成一个帖子. 这是从数字中获取帖子的承诺: var getPost = function(author) {console.log('获取帖子' + 作者);返回新的 RSVP.Promise(function(resolve, reject) {设置 ..
发布时间:2021-06-22 19:20:38 前端开发

Node.js流与可观察对象

了解了可观察对象后,我发现它们与Node.js流.两者都有一种机制,可以在新数据到达,发生错误或没有更多数据(EOF)时通知消费者. 我很想了解两者之间的概念/功能差异.谢谢! 解决方案 Observables 和node.js的 Streams 都可以解决相同的潜在问题:异步处理值的顺序.我认为,两者之间的主要区别与激发其外观的环境有关.该上下文反映在术语和API中. 在 O ..
发布时间:2021-05-19 19:46:22 前端开发

基于另一个Observable的自定义过滤器的功能反应运算符

为了好玩和学习,我正在尝试使用功能性反应式编程在我的应用程序中实现撤消系统。我有一个状态更改流,需要保存到撤消堆栈中。当用户单击undo时,我从堆栈中获取一个值并相应地更新应用程序状态。 问题是此更新本身也会在状态更改流中生成一个事件。所以我想要的是从状态变化中导出另一个流,它在撤消后立即省略状态变化。 一个简单的图表: 州---- S ---- S ---- S ---- ..
发布时间:2019-06-07 23:05:10 前端开发

与FRP战斗

我读过FRP,非常兴奋。 它看起来很棒,所以你可以编写更多高级代码,一切都更具组合性等等。 然后我试着改写我的从普通的js到培根,只有几百个sloc的小游戏。 我发现不是编写高级逻辑代码,而是实际上用培根打败了。 js及其对原则的遵守。 我遇到了一些令人头疼的问题,主要是干扰清洁代码 .take(1) 而不是获得价值,我应该创建丑陋的结构。 循环依赖 有 ..
发布时间:2019-06-06 12:05:31 前端开发

JavaScript中的功能反应式编程是否会导致侦听器引用出现更大的问题?

在JavaScript中,经常使用观察者模式。它有一个棘手的问题,那就是主体对观察者的参考。他们需要清理。对于常规应用,我使用以下经验法则: 如果受试者的寿命短于(或等于)观察者,我可以做 subject.on('event',...) 如果受试者的寿命超过观察者,我需要使用 observer.listenTo(subject,'event',...) 在第二种情况下, listen ..
发布时间:2019-06-06 01:55:56 前端开发

如何交错流(带背压)

假设我有两个可能无限的流: s1 = a..b..c..d..e ... s2 = 1.2.3.4.5.6.7 ... 我想要合并流,然后用慢速异步操作映射合并流(例如在Bacon中使用 fromPromise 和 flatMapConcat )。 我可以将它们与合并组合: me = a12b3.c45d6.7e ... 然后映射 ..
发布时间:2019-05-24 18:08:47 前端开发

等待BaconJS中从属流的最新值?

我有3条流。 gradingResult 和 contextId 取决于 studentResponse 。当所有3个具有最新值时,我需要发起一个事件,而且只有一个事件(否则,这是微不足道的)。 我试过#combineTemplate和#sampledBy studentResponse 。不幸的是,我总是看到错误的数据--- gradingResult 和 contextId 在组合模板中 ..

Javascript:功能(_)是什么意思

我正在浏览bacon.js幻灯片: http://raimohanska.github.io/bacon.js-slides/1.html 在第二个街区的第一行,它说: pre $ 函数always(value){返回函数(_){返回值}} function(_)是什么意思? _ 只是一个函数参数 - 一个下划线是一些被程序员用来指示的约定“忽略这个绑定/参数”。 由于 ..
发布时间:2018-04-17 10:24:21 前端开发

功能反应编程对事件监听器的优势

我已经听到很多关于功能反应式编程的信息,并且决定检查一下大事件。通过bacon.js文档,主要区别在于,不是在组件上设置事件侦听器,而是在其上创建一个事件流,并将事件处理程序传递给流。换句话说,我所做的只是将事件处理程序从组件移动到事件流。是吗如果是这样,那么这样做有什么好处? 解决方案 是吗? > 否。这是关于具有事件流。您仍然会将听众附加到他们,以执行效果,但在源和目的地之间 ..

我应该如何使用bacon.js保持几个值的运行总计?

使用 bacon.js 来处理。我想在一组文本输入中保持一个运行的值。 github网站上的例子使用 .scan 和一个加法器函数,它对该示例很好,因为它在流中使用-1和+1。但是我想要从流中删除值,如果他们被编辑,所以 .scan 解决方案将不会真正为我工作,或者我不是做正确。 标记: ..