想同時處理兩個observable 一個快一個慢 ,請問高手們會如何處理

redux
ngrx
討論

#1


老外建議用 .zip
可是會吃很多cache


#2

你想要做到怎樣的事情?需求是什麼?


#3

同時呼叫兩個不同的api
但因為後台response回來的速度差30秒左右(就是一個資料已經回傳到前台另一個還沒)
我希望在資料到位之後再開啟畫面視窗


#4

使用 forkJoin 即可等所有的資料回來後再繼續


#5

感覺是我要的,謝謝你


#6

借樓主的問題問一下
如果其中一個 observable B 需等待另一個 observable A 的執行結果
例如 B 的 request 必須帶著 A 的 response 的某個參數
小弟目前的寫法利用嵌套:

requestA().subscribe(dataA => {
    requestB(dataA.someProperty).subscribe( ... );
});

想請問有無更好的寫法或是想法可以提點我一下 :thinking: > <


#7

看需求使用 switchMap 或 mergeMap


#8

主要是利用Map,來減少subscribe寫的次數
我這樣說對嗎 ??


#9

資料流的轉移都可以使用 operator 完成(這系列的 operator 通常是 xxxMap,實際上這是一個語法糖 operator),subscribe 應只保留給最後的使用者去訂閱,因為一經 subscribe 就失去了 operator 串接的能力。


#10

懂意思了 :grinning: 新的一年 感謝您


#11

The other thought of combining observable and async-await: