【发布时间】:2017-07-07 13:31:34
【问题描述】:
所以我使用 getAll 来获取学校的所有虚拟主机,它以 ID 列表(虚拟主机的 ID)的形式返回。然后,为了获取虚拟主机的数据,我必须在每个 ID 上调用另一个 get。我通过这样的 for 循环来做到这一点--
this.apiService.findAll("virtualhosts/deltest")
.subscribe((data) => {
this.data = data.docs[0]
error => console.log(error)
for (let i = 0; i < this.data.VirtualHosts.length; i++) {
this.apiService.findVH(this.data.VirtualHosts[i])
.subscribe((data) => {
this.data = data.docs[0]
this.jsonData = this.jsonData.concat(this.data)
})
}
});
问题是,apiService.findVH 没有按照 apiService.findAll 给出的 ID 顺序调用 get。每次调用它时,它都不会按列表的顺序计算 ID(因此 this.data.VirtualHosts[i] 的索引不同)如何让 findVH(获取调用)按顺序调用索引?
【问题讨论】:
标签: angular rxjs observable angular2-services