【发布时间】:2018-12-08 09:05:49
【问题描述】:
我正在尝试使用 for 循环发出多个请求,然后使用 forkJoin 一次获取所有数据。
为了获取数据,我在我的服务组件中创建了一个函数,然后在调用该函数后在 for 循环内部订阅它,然后将数据推送到临时变量中。之后,当 for 循环完成时,我期待 forkJoin 订阅并返回值。
代码:
const observables = [];
for (let i = 0; i < this.originalData.length; i++) {
this.dashboardService.getDetails(this.id1[i], this.id2[i]).subscribe(data => {
observables.push(data);
});
}
forkJoin(observables).subscribe(dataGroup => {
console.log(dataGroup);
});
如果我在检查元素中检查我的网络,那么我可以看到它正在请求这些 url,并且响应状态为 200,但在控制台中我没有看到任何错误,但同时 forkJoin subscribe 没有输出. 我是新手,所以我可能没有正确理解如何使用 forkJoin。
我也在使用 rxjs": "^6.0.0",
【问题讨论】: