RXJS在forkJoin可观察数组中捕获错误

时间:2019-11-21 18:28:31

标签: angular rxjs

我有一个例程,将Observable收集到一个数组中,然后forkJoins它们。

// Contains X post requests.
let obs: Observable<any>[] = [];
let numberExecuted: number = 0;
let failed = [];
forkJoin(
    obs.map(o =>
      o.pipe(
        catchError(e => {
          failed.push(e);
          return of(null);
        }),
        tap(() => {
          numberExecuted++;
        })
      )
    )
  )
  .subscribe(() => {})
  .add(() => {
    // Display what succeeded / failed.
  });

我想将哪些请求失败/成功的例程保存到例程完成后要显示在对话框中的数组中。我现在的逻辑是不捕获失败的请求并存储错误。订阅完成后,尽管有失败的请求,失败的数组始终为[]。

0 个答案:

没有答案