Javascript 有条件地合并映射
是否有任何RxJS方法可以在Angular中有条件地调用mergeMap:Javascript 有条件地合并映射,javascript,angular,rxjs,Javascript,Angular,Rxjs,是否有任何RxJS方法可以在Angular中有条件地调用mergeMap: return apiService.myApi.get().pipe(map(res => res), mergeMap(res => this.getPeople(res))) 对这样的事情: return apiService.myApi.get().pipe(map(res => res), someCond ? mergeMap(res =&g
return apiService.myApi.get().pipe(map(res => res), mergeMap(res => this.getPeople(res)))
对这样的事情:
return apiService.myApi.get().pipe(map(res => res),
someCond ? mergeMap(res => this.getPeople(res)) : null)
不可以,但是您可以使用
of()
返回原始值,或者使用EMPTY
不进一步发出任何信息:
return apiService.myApi.get().pipe(
map(res => res),
mergeMap(res => someCond ? this.getPeople(res) : of(res)),
);
谢谢@martin,它像以前一样工作,我做了一个完整的if语句,而不是三元运算符,没有考虑(res)