私の c++ プロジェクトでは、更新される可能性のある初期値を持つサブジェクトを作成する必要があります。サブスクリプション/更新ごとに、サブスクライバーはデータ処理をトリガーする場合があります... 以前の Angular (RxJS) プロジェクトでは、この種の動作は ReplaySubject(1) で処理されていました。
を使用してこれを再現することはできませんc++ rxcpp lib
。
ドキュメント、スニペット、チュートリアルを探しましたが、成功しませんでした。
予想される疑似コード (typescript):
private dataSub: ReplaySubject<Data> = new ReplaySubject<Data>(1);
private init = false;
// public Observable, immediatly share last published value
get currentData$(): Observable<Data> {
if (!this.init) {
return this.initData().pipe(switchMap(
() => this.dataSub.asObservable()
));
}
return this.dataSub.asObservable();
}