Rxjs AsyncSubjectを使ってみる 

AsyncSubject とは



AsyncSubjectは、
rxjsのインデックスパッケージに含まれおり、
const { AsyncSubject } =require('rxjs')
で呼び出すことが出来ます。

AsyncSubjectは、
Subjectの子クラスになることから、
const subject = new AsyncSubject()で、
AsyncSubjectのインスタンスを作成するとき、
名称をsubjectにします。

AsyncSubjectは、
メソッドのcomplete()が実行されたときにのみ、
オブザーバブルの最後の値を唯一発行します。

ここでは、
subject.next('last')が最後なので、
lastの値になります。

下記①の、
subject.complete()が無ければ、
何も表示しないで終了します。




const { AsyncSubject } =require('rxjs');

const subject = new AsyncSubject();

subject.subscribe(
(x) => console.log(`observerA:`+x)
);

subject.next(1);
subject.next(2);
subject.next(3);

subject.next('last');
//①
subject.complete();

【結果】
observerA:last