【发布时间】:2014-07-03 13:52:50
【问题描述】:
在 Rx JS 的表面上,我得到了以下 sn-p:
var observer1 = Rx.Observer.create(
function (x) {
console.log('Next: ' + x);
},
function (err) {
console.log('Error: ' + err);
},
function () {
console.log('Completed');
}
);
var observer2 = Rx.Observer.create(
function (x) {
console.log('Next: ' + x);
},
function (err) {
console.log('Error: ' + err);
},
function () {
console.log('Completed');
}
);
var source1 = Rx.Observable.return(1);
var source2 = Rx.Observable.return(2);
var subscription1 = source1.subscribe(observer1);
var subscription2 = source2.subscribe(observer1);
输出: 下一个:1 已完成
JS BIN 代码参考:http://goo.gl/DiHdWu
为两个流订阅同一个观察者只会从第一个流中产生数据。但是,当订阅其他观察者时,事情会按预期进行。有人可以解释一下发生了什么吗?
var subscription1 = source1.subscribe(observer1);
var subscription2 = source2.subscribe(observer2);
输出: 下一个:1 完全的 下一个:2 已完成
【问题讨论】:
标签: javascript functional-programming reactive-programming rxjs