RxJS可观察连续不工作
问题描述:
concat
调用发生了什么?我知道如果我通过merge
代替concat
,代码正常工作,输出为foo
bar
qux
quux
。我已经阅读了关于热和冷的可观察性,并且我知道如果在订阅之前生成的值可能会发生热的可观察性,但是我的可观察性下面有cold,所以我认为情况并非如此。RxJS可观察连续不工作
const Rx = require('rxjs');
const observable1 = Rx.Observable.create((observer) => {
observer.next('foo');
observer.next('bar');
return observer;
});
const observable2 = Rx.Observable.create((observer) => {
observer.next('qux');
observer.next('quux');
return observer;
});
const result1 = observable1.concat(observable2);
result1.subscribe((x) => console.log(x));
// outputs
foo
bar
谢谢。你有什么资料来确认/解释为什么这是必要的? – thiagoh
@thiagoh这是'concat()'方法的一个正常行为。 '按照先前完成**的顺序订阅观察对象,发射值.' - https://www.learnrxjs.io/operators/combination/concat.html –
大理石图是一种很好的视觉辅助材料[Concat ](http://reactivex.io/documentation/operators/concat.html) –