我刚刚开始使用bacon.js并试图找出它是如何工作的。 在下面的代码中,asEventStream返回一个eventStream,当捕获一个blur事件时,它会发出一个false值,据我所知。 合并和toProperty可以从代码中获取什么。
var blur = $(window).asEventStream('blur').map(function() {
return false;
});
var focus = $(window).asEventStream('focus').map(function() {
return true;
});
var focused = focus.merge(blur).toProperty(true);
答案 0 :(得分:1)
focused
是一个包含blur
和focus
个流的所有事件的流。 focused
也是属性,这意味着只要有人订阅它,它们就会立即从流中收到最新值。如果尚未输入任何值,则将true指定为默认的起始值。
说这是下次运行的:
focused.onValue(function(x) {
console.log('received', x);
});
'收到真'将立即打印到屏幕上。如果/当窗口失去焦点时,将打印“收到错误”。如果/当窗口再次聚焦时,将打印“接收为真”。