我想要实现以下行为:
source$.pipe(
filter(...),
map(...),
/* and then switchMap or concatMap based on provided value */
);
是否存在if ... else或switch ... case rxjs函数,这些函数将基于管道中的数据返回运算符?
答案 0 :(得分:1)
您可以将合并运算符与条件过滤一起使用,然后仅从单个源$满足一个条件。
concatStream=source=>source
.pipe(.filter(..your condition)
switchMap(...))
switchStream=source=>source
.pipe(
.filter(..your condition)
switchMap(...))
merge(concat(source$),switch(source$)).subscribe()