RxJS,Angular 9。任务:在循环中,您需要为每个项目 service.getData(item.param) 发出请求,等待响应,然后遍历数组。
例子:
array.forEach(item => {
if (!item.mark) {
ожидание this.service.getData(item.type) // запрос на сервер
}
});
RxJS,Angular 9。任务:在循环中,您需要为每个项目 service.getData(item.param) 发出请求,等待响应,然后遍历数组。
例子:
array.forEach(item => {
if (!item.mark) {
ожидание this.service.getData(item.type) // запрос на сервер
}
});
这可以用 RxJS 来完成,但也可以用普通的 promise + 来完成
async/await
。我更喜欢第二种选择,更简洁+对所有团队成员都清楚:
如果顺序不重要并且所有请求都可以并行:
如果你需要 RxJS(但为什么?😁):
如果顺序不重要,则
mergeMap
代替concatMap
.如果要将所有查询的结果作为数组获取: