触发多个可观察的API调用

时间:2019-06-21 10:32:59

标签: angular rxjs observable

在一个循环中触发多个api调用,如下所示:

for (let item of items) {
    resource.post(item).pipe(map(() => {
      ...
    }
}

但是以上操作由于异步行为而失败。该如何处理?

1 个答案:

答案 0 :(得分:0)

从您的代码中可以理解,使用了RxJS,其中有一个Zip运算符,它以可观察的数组的形式发出所有值,就像

let requestObservables = []
for (let item of items) {
  requestObservables.push(resource.post(item));
  return zip(...requestObservables).pipe(mergeMap(res => { ....//response actions });
 }