【发布时间】:2018-09-02 23:09:41
【问题描述】:
这是我在 RxJs6 中的代码:
const observable$ = interval(1000).pipe(
take(2),
map(x => interval(1500).pipe(
map(y => x+':'+y),
take(2),
concatAll()
)),
);
observable$.subscribe(obs => {
obs.subscribe(x => console.log(x));
});
我希望我的代码显示如下结果:
0:0
1:0
0:1
1:1
但它实际上显示:
为什么我的代码每次只打印一个字符?而且我认为它应该像我预期的那样工作,而不是实际结果。我对 rxjs 的理解有什么问题吗?
【问题讨论】:
-
使用
concat而不是concatAll -
我的代码引用了更高阶的 observable,我想打印第一个 observable 直到它达到完整状态。然后打印第二个可观察数据,这就是我使用 concatAll 的原因
标签: javascript rxjs rxjs6