2016-10-13 13 views
5

rxjs observableサブスクリプションから即座に退会する方法について、誰かが気をつけてください。観測可能なのはAngular 2 EventEmitterです。私がイベントを受け取ったら、私はサブスクリプションをキャンセルしたいと思う。ここでの問題は、内のサブスクリプションを取り消すことです。rxjs observableから即座に退会

this.subscription = observable.subscribe((result: any) => { 
        // do something 
        // **unsubscribe** 
       }); 

おかげ

+0

Angular 2でEventEmitterの登録を解除するにはどうすればいいですか?(http://stackoverflow.com/questions/36494509/how-to-unsubscribe-from-eventemitter-in-angular-2) – jmachnik

+0

take(1) )はfirst()と比べてより良い選択肢と思われます https://stackoverflow.com/questions/42345969/angular-2-using-rxjs-take1-vs-first –

答えて

13
observable.first().subscribe(....)` 

最初のイベントの後にサブスクリプションを終了します:私は、これは間違ったアプローチであることを感じています。

+1

これは私が探していたアプローチです。ありがとう – user1145347

+0

6番目のイベントだけを取得するために '.take(1)'や '.skip(5).take(1)'のような他の同様の演算子があります。 –

関連する問題