問題タブ [rxjs-observables]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
12 に答える
533241 参照

javascript - BehaviorSubject vs Observable?

Angular RxJs パターンを調べていますが、 aBehaviorSubjectと anの違いがわかりませんObservable

私の理解では、aBehaviorSubjectは時間の経過とともに変化する可能性がある値です (サブスクライブすることができ、サブスクライバーは更新された結果を受け取ることができます)。これは、のまったく同じ目的のようObservableです。

いつ anObservableと aを使いBehaviorSubjectますか? またはその逆を使用BehaviorSubjectする利点はありますか?Observable

0 投票する
2 に答える
1352 参照

angular - RxJs オペレーターは、ループを使用して複数のサブスクリプションを回避します

Angular アプリのナビゲーション コンポーネントを作成しています。次のコードがあります。複数サブスクリプションのアンチパターンを回避したい。RxJs の構文と、どの方法 (forkJoin、mergeMap など) に苦労しています。

これらをリファクタリングして、サブスクライブ内のサブスクライブを削除するにはどうすればよいですか。

これは私が持っているもので、現在は機能していますが、サブスクライブ内にサブスクライブがあります:

0 投票する
1 に答える
40 参照

reactjs - おそらくレースコンディション

こんにちは、私は 1 つのバグを解決しようとしています。ボタンをクリックした後、timeinput が空になることがあります。delay() を使用すると、すべて問題ありません。しかし、新しい訪問者を作成するときに空の入力がありません。

遅滞なく()

遅延あり

0 投票する
2 に答える
901 参照

rxjs - Observable サブスクライバーを取得し、別の Observable にサブスクライブさせる

簡単に言えば

既存の Observable (まだ完了していない) が与えられた場合、関連付けられたサブスクライバー (サブスクライブに渡された関数) を取得して、代わりに別の Observable にサブスクライブさせる方法はありますか?

環境

私のアプリケーションのサービスは、SeverEvent接続を作成し、 ConnectableObservableをプロキシ接続に返し、publishオペレーターを使用してマルチキャストを許可するのに役立ちます。このサービスは、内部ストアを介して既存の接続を追跡します。

接続の作成時に、関連付けられたトラッカーが既に存在する場合 (ID は接続のエンドポイントを使用して作成されます)、サービスは次のことを行う必要があります。

  • ok既存のトラッカーのServerEvent接続を閉じます
  • ok新しいSerevrEvent接続を開きます (したがって、新しい ConnectableObservable になります)
  • 既存のトラッカーの Observable を新しい Observable に置き換えますが、代わりに既存のサブスクライバーを新しい Observable にサブスクライブさせます

ConnectionTrackerを作成するコード部分は次のとおりです

ありがとうございました。