订阅另一个可观察对象内的嵌套可观察对象

时间:2020-10-18 21:28:41

标签: javascript rxjs nested observable behaviorsubject

我有一个行为主体,可以观察到一些数据。 即

BehaviorSubject<Observable<data>>

如何直接订阅嵌套的可观察对象?

1 个答案:

答案 0 :(得分:1)

您应该将其通过管道传输到the flattening operators之一,例如mergeMap

yourSubject.pipe(mergeMap(v => v))

我的例子:

const t = timer(0, 500).pipe(take(5));
const s = new BehaviorSubject(t);
s.next(t);
s.pipe(mergeMap(v => v)).subscribe(console.log);
s.next(t);
s.next(t);