Как узнать, когда все HTTP-вызовы Angular2 завершены
Я пишу приложение, которое будет отслеживать текущий номер сборки всех наших приложений на разных серверах. Это делается путем создания 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 наблюдаемых