【发布时间】:2016-03-15 14:45:45
【问题描述】:
我正在编写一个应用程序,它将监控我们跨不同服务器的所有应用程序的当前内部版本号。这是通过向每个应用程序中的 txt 文件发出 http 请求来完成的。我正在使用 foreach 循环来做到这一点。
我遇到的问题是我不确定如何(使用 Observables)知道所有请求何时完成。
当请求返回时,我将响应添加为对象数组的属性。然后,一旦我拥有所有数据,我将它绑定到组件的模板,在那里它被管道过滤。因此,我需要确保在所有数据都完成下降之前不绑定它。
这是我获取数据的方式:
this.apps.forEach(app => {
app.Environments.forEach(env => {
this._buildMonitorService.getBuilds(env.URL)
.subscribe((data) => {
setupBuilds(this.apps,data.url,data._body);
});
});
});
setupBuilds 将响应添加到我的应用程序数组中。
我正在寻找的东西实际上是一个 Promise.all 我将在其中绑定
this.builds 到 setupBuilds 中的数据设置,但我不知道如何使用 rxjs observables 来做到这一点
【问题讨论】: