我希望在完成数据和过滤器数据请求后选中复选框。如何检查我的所有请求是否已完成,然后调用该方法。
答案 0 :(得分:0)
首先看一下RxJs的Observable.forkjoin以及Observables的工作原理。
以下是一些可以帮助您入门的示例代码:
const urls = ['myUrl1', 'myUrl2'];
const requestArray = makeMultipleRequest(this.observableArr(urls));
observableArr = queryUrls => queryUrls.map((url) => this.httpRequest(url));
makeMultipleRequest = (requestArr) => Observable.forkJoin(requestArr);
httpRequest = (url) => this.http.get(url).map((res) => res.json())
.catch((err) => handleError())
requestArray.subscribe((data) => {
// Do what you want with the results from your requests
});
不要忘记import { Observable } from 'rxjs/Rx';
并import { Http } from '@angular/http';