0
當我嘗試從此rxjs觀察者中取消訂閱時,出現「Illegal Invocation」錯誤。Rxjs/AngularFire2:unsubscribe():「TypeError:Illegal Invocation」
let s = names.subscribe((a:Array<any>) => {
s.unsubscribe();
if(a.length){ reject('name exists') }
}
的名變量的類型FirebaseListObservable
設置一些斷點,我可以看到,觀察者函數(回調)被立即調用。此訂閱之後的任何代碼在回調已經運行一次之後運行。變量未定義,因此在回調中。
我在這裏做錯了什麼?觀察者不應該等到下一次打勾?我應該手動嗎?
UPDATE:包裝回調代碼中的setTimeout(代碼,0)擺脫了錯誤的。這似乎很奇怪,我應該不得不這樣做呢?
漂亮,謝謝 –