1
當我應用switchMap到可觀察並返回結果,我期待的認購,結果不會導致開關地圖重新運行。switchMap調用內部函數多次
看看下面的代碼:
let myObservable = Observable.of('empty')
.switchMap(id => {
doWork();
return Observable.of('test');
}
);
myObservable.subscribe(x => console.log('subscription 1'));
myObservable.subscribe(x => console.log('subscription 2'));
function doWork() {
console.log('working!');
}
它產生:
working!
subscription 1
working!
subscription 2
什麼進出口尋找是隻被調用一次的doWork方法和像這樣的輸出:
working!
subscription 1
subscription 2
回答相關的其他資源:
謝謝你馬克。我正在研究冷與熱的可觀測量,我相信在這種情況下,我確實需要一個熱門的可觀測量。與共享執行publish()然後connect()是一樣的嗎? – cgatian
當第一個流訂閱時,share()會引用並連接()。 publish()讓你在連接()之前訂閱所有東西並開始接收上游排放 –
這種類型的RxJs編程是否爲反模式?我應該尋找替代方法來做到這一點? – cgatian