使用中の既存の件名があります:
const fooSubject = new BehaviorSubject(null);
そして、別のオブザーバブル(この例では別の主題)があります。
const barSubject = new Subject();
barSubject.subscribe(
value => fooSubject.next(),
err => fooSubject.error(err),
() => fooSubject.complete()
);
barSubject.next('bar');
コードは機能しますが、不格好に見えます。
パイプするためのより良い方法はありますか(広義では、必ずしもpipe
演算子を使用する必要はありません)barSubject
オブザーバブルをfooSubject
に監視できますか?ライブラリ自体で処理できる操作のように見えます。
Subjectはすでにメソッドnext()
、error()
、およびcomplete()
のオブザーバーであるため、任意のObservableにサブスクライブすることができます。
const fooSubject = new BehaviorSubject(null);
const barSubject = new Subject();
barSubject.subscribe(fooSubject);
barSubject.next('bar');