私はマージ演算子で1つが火災したときにリッスンしているか、両方ともハンドラを1回だけ実行する必要があることを2つ観測できます。Rxjsは一度だけハンドラを実行します
var source1 = Rx.Observable.interval(1000);
var source2 = Rx.Observable.interval(1000);
var source = Rx.Observable.merge(
source1,
source2)
.subscribe(() => console.log('This needs to run only once and not kill the stream'))
'.take(1)'試してみてください。 –
'.first()'を試してください。 – Maxime
'take(1)'、 'first()'、 'single()'です。 http://stackoverflow.com/questions/42345969/angular-2-using-rxjs-take1-vs-first/42346203#42346203を参照してください。たぶん 'forkJoin'でもありますが、それはあなたが何をしたいのかによって異なります。 – martin