例如,我有一个数字为1,2,3,4的流,依此类推。我想感知这些数据中的每一个,并且每当我想在另一个数据流中发出true时。保持源数据stram [1,2,3,4]不变。
答案 0 :(得分:1)
我建议您共享您的来源并订阅两次。
...
private source$ = of(1,2,3,4,5,6).pipe(share());
private evenNumberObservable$ = this.source$.pipe(
map(x => x % 2 === 0),
filter(x => !!x)
);
//or
//private evenNumberObservable$ = this.source$.pipe(
// filter(x => x % 2 === 0),
// map(x => true)
//);
public ngOnInit() {
this.evenNumberObservable$.subscribe(x => console.log(x));
this.source$.subscribe(x => console.log(x))
}
...
整个code