我的要求是,我有兩個端點一個列出HondaCars和一個列表PeugoetCars當我使用combineLatest
運算符時,它不會等待另一個流完成;rxjs發出並行請求並等待兩個完成並更新後,其中一個發出
這裏我的要求=>第一次等待,直到兩個源流兩者的一個後收到的值那麼刷新後接收的值
編輯
所以經過搜索的一段時間,我只是貼有combineLatest
但訣竅是在這裏:
this.loading = Observable.combineLatest(
myFirstObservableIndicatingIfFirstHttpReqEnded,
mySecondObservableIndicatingIfSecondHttpReqEnded
).map(d => d.some(t => t === true));
所以現在,用戶只要看到微調,直到所有請求已完成,即使兩者的一個可觀測量一個已經取得了一定的價值。
只是爲了澄清我有兩個loadingReducers這是處理加載邏輯對於每個可測量,所以在我的情況下,我這樣做是爲了知道當兩個HTTP調用完成
完全有觀測一個非常特殊的意義。大理石圖可以讓你的情況更清晰。無論如何,它聽起來像你想要的其實是'combineLatest':「爲了確保輸出數組的長度始終相同,'combineLatest'實際上會等待所有輸入的可觀察對象至少發出一次」 – cartant
你能否用什麼來更新你的問題你已經試過了? –
@ Jota.Toledo好吧,我會更新我的問題與我所做的 –