Angular 触发具有可观察性的多个API调用
在循环中触发多个api调用,如下所示:Angular 触发具有可观察性的多个API调用,angular,rxjs,observable,Angular,Rxjs,Observable,在循环中触发多个api调用,如下所示: for (let item of items) { resource.post(item).pipe(map(() => { ... } } 但是上面的一个由于异步行为而失败。如何处理这个问题?从您的代码中可以理解使用了RxJS,其中我们使用了Zip操作符,它以数组的形式从observable发出所有值,比如 let requestObservables = [] for (let item of items) {
for (let item of items) {
resource.post(item).pipe(map(() => {
...
}
}
但是上面的一个由于异步行为而失败。如何处理这个问题?从您的代码中可以理解使用了RxJS,其中我们使用了Zip操作符,它以数组的形式从observable发出所有值,比如
let requestObservables = []
for (let item of items) {
requestObservables.push(resource.post(item));
return zip(...requestObservables).pipe(mergeMap(res => { ....//response actions });
}
从您的代码可以理解使用了RxJS,其中我们使用了Zip操作符,它以数组的形式从observable发出所有值,比如
let requestObservables = []
for (let item of items) {
requestObservables.push(resource.post(item));
return zip(...requestObservables).pipe(mergeMap(res => { ....//response actions });
}