2017-09-11 47 views
0

我想在我的數據和過濾器數據請求完成時選中複選框。如何檢查我的所有請求是否已完成,然後調用該方法。如何在Angular 2中完成所有http請求時調用方法

+2

你可以添加你在哪裏發出HTTP請求的代碼 –

+0

我從不同的API獲取數據。我想在完成所有api數據後調用該方法。 –

+0

是的。所以你可以在你調用所有這些apis的地方添加代碼。 –

回答

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';

好運

相關問題