我有一個配置服務,用於從json文件中檢索特定的信息。Angular 2獲得系列請求
getConfiguration(key) {
return this.http.get('./app/config/development.json').map(res => {
this.result = res.json();
return this.result[key];
});
}
我試圖讓我的api(在development.json)的基礎網址,並使用此網址發出請求。
getJoueurs() {
this.conf.getConfiguration('apiBaseUrl').subscribe((url: any) => {
return this.http.get(url + 'joueur').map(res => res = res.json());
});
}
所以,我訂閱了我的配置,然後嘗試返回一個可觀察的對象,以在我的組件中捕獲它。
在這裏,在我的組件:
this.requestService.getJoueurs().subscribe((joueurs) => console.log(joueurs));
事實是,我遇到的訂閱錯誤「並不在類型爲void存在」。我在這裏做錯了什麼,以及什麼是串聯請求的正確方法。
你得到「void」錯誤的原因是你的'getJoueurs()'函數不返回任何東西。它運行'getConfiguration()'是,但不輸出任何可以訂閱的東西。下面的回答將幫助你解決其餘的問題,但她錯過了回報以及目前的狀況。 –
我不太明白,方法「getjoueurs」正在返回可觀察對象 return this.http.get(url +' joueur')。map(res => res = res.json()); 這行應該返回我可觀察的對象。 你能幫我弄清楚丹尼斯嗎? 有效地在朱莉婭的回答中,getJoueurs方法中沒有返回任何內容。 – user3668100