如果条件在RxJS中为真,是否可以跳过所有后续运算符链

时间:2019-07-10 14:27:21

标签: angular typescript rxjs

在RxJS 5.5中是否可以使用某些运算符来实现条件以跳过所有后续运算符并发出某些值(false)?例如,在这种ng服务方法中,如果.map,我将绕过此false链束并立即提供response.length === 0值:

getProjectDrivers(projectId): Observable<any> {
  return this.http.get('someUrl').pipe(
    // if (response.length === 0) { return false; and skip whole operator chain bellow}
    map((response: ProjectDriver[]) => response.filter((projectDriver: ProjectDriver) => projectDriver.streamName !== "AllRevenueStreamTotals")),
    map((response: ProjectDriver[]) => command => ({})
  )
)
.catch(this.handleError);

}

1 个答案:

答案 0 :(得分:4)

我想你总是可以和omp_get_num_threads一起玩

switchMap