問題タブ [reactive-extensions-js]

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 投票する
1 に答える
4315 参照

javascript - Javascript コード例の Reactive Extensions

Microsoft はJavascript の Reactive Extensions を公開しています。これにより、非同期 (およびイベント ベース) の Web UI プログラミングが容易になります。

現在、ビデオいくつかのチュートリアルがあります。しかし、どれだけクールな UI を作ることができるでしょうか? rx.js を使用した良いデモやコード例を知っていますか?

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

javascript - Rx JS でカスタム イベントをトリガーする

Reactive JSを理解しようとしています。JQueryでは、カスタムイベントを次のようにトリガーできます

データを渡します(つまり、「テスト」)。RxJS でこれを行う方法は明確ではありません。jqueryイベントを次のように変換しようとすることができます

しかし、observable はイベント オブジェクトを返しますが、データ オブジェクトは返しません。RxJS を使用してデータでカスタム イベントをトリガーするにはどうすればよいですか? 常に他の種類のイベントに便乗する必要がありますか? 私の目標は、RxJS を使用して単純なイベントバスを作成することです。

0 投票する
3 に答える
1933 参照

jquery - いくつかのajax呼び出しが成功した後にイベントをトリガーする

いくつかの(順序付けられていない)ajax呼び出しが終了した後にイベントをトリガーするための最良のアプローチはどれかと思います。

少し明確にするために、いくつかのajax呼び出しをトリガーするメソッドdoSomethingGreat()を呼び出したいと思います。これらの呼び出しが成功する順序は、不要です。これらの呼び出しがすべて成功したときに、イベント「SomethingGreatFinished」をトリガーしたいだけです。また、これらの呼び出しを連鎖させたくありません。パフォーマンスが不足し、非同期プログラミングの考え方に完全に反するからです。

a。)そのための一般的なパターンがあるかどうか、b。)これはJavaScript用のReactive Extensions(RxJs)またはc。)ネイティブjquery機能を使用して実行できるかどうか疑問に思います。

どんな助けでも大歓迎です!

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

javascript - 非アクティブな期間までイベントをバッファリング/無視し、最後のイベントのみを起動します

起動するとメッセージが表示されるのがわかります。しばらくしてから、その間にobservableが再び起動しない限り、そのメッセージをフェードアウトしたいと思います。

言い換えると、オブザーバブルが与えられた場合、最後のイベントが発生したときに最初のオブザーバブルが指定された時間より前に作成されたオブザーバブルがその最後のイベントを発生するように、別のオブザーバブルを作成したいと思います。

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

reactive-extensions-js - Rx.js (javascript のリアクティブ拡張機能) でコナミ コードを検出する方法は?

Rx.jsの学習を開始したいと考えており、ボールを転がし始めるためのクールな例を探しています。Rx.js でコナミコードを検出するにはどうすればよいですか?

キーを押すイベントのシーケンス (上、下、下、左、右、右、BA) を検出し、これが発生した場合に画像を表示したいと考えています。

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

javascript - Javascript の Reactive Framework サブスクリプション内でインスタンス変数/メソッドを使用する

Reactive Framework をテストしようとしている JS のオブジェクトがあります イベント サブスクリプションで、サブスクリプションが定義されているエンクロージング クラスのインスタンス メソッドを次のように呼び出したいと思います。

これを行うにはどうすればよいですか (「この」スコープはサブスクリプションのスコープであるため)。何らかの方法でサブスクリプションを設定するときに、関数/変数を渡す必要がありますか?

これを行おうとすると、すべてのブラウザーで、インスタンス変数またはメソッドが存在しないというエラーが表示されます。インスタンス メンバーを呼び出したい関数のスコープ内の「this」は、オブザーバーを参照しているため、 OnNext、OnCompleted などの機能

どうもありがとう、

ポール

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

system.reactive - 可能なストリームを区別し、クリーンなソリューションを探します

いくつかの GUI シナリオで RxJS を使用しようとしています。興味深い事例に出会いました。エンティティを表示、編集、作成できるウィジェットがあります。

「AddNewEntity」ボタンをクリックしたとき。editwidget は空のエンティティを作成し、それをロードして編集モードに変更します。ただし、既に編集モードになっている場合は、最初に変更を元に戻すかどうかを尋ねるメッセージが表示されます。[はい] をクリックすると、前に説明したのと同じことが起こります。

だから私はRxがそれで私を助けるかもしれないと思った. これがコードです。

基本的に、2 つのストリームをマージしています。状態が「NotInEditMode」であるウィジェットの状態によってフィルタリングされるボタンへのクリックの 1 つのストリーム。また、反対の状態にフィルター処理されたボタンへの別のクリック ストリームが、ダイアログの戻り値ストリームに射影されます。ダイアログの戻り値は、指定された回答を表す bool の AsyncSubject であることに注意してください。

今、トリッキーな部分です!このようには機能しません!なんで?状態が「NotInEditMode」の場合、最初のストリームが一致するため、ウィジェットが編集モードに設定され、2 番目のストリーム (マージ内の順序のために後で実行される) も一致し、基本的に完全に矛盾した状態になります (ロックされていない編集モードと開いているダイアログ)。

私はそれを修正する2つの方法を見つけました。最初のものは、マージ内の順序を次のように変更します。

ただし、このソリューションは嫌いです。読者には明らかではありません。

幸いなことに、別の解決策を見つけました。

背後にある考え方は、進むべき道は 1 つしかないため、最初に一致したシナリオで他のすべてのシナリオを中止する必要があるというものです。

ただし、よりクリーンなソリューションがあるのではないか、それとも設計されていないものに Rx を使用しようとしているのだろうか ;-)

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

system.reactive - SignalR とリアクティブ拡張機能

SignalR は Reactive Extensions と同じものですか? 理由を説明できますか、または説明できませんか?

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

javascript - 複数の非同期パブリック API 呼び出し (rails+node.js またはリアクティブ js)

3 つのパブリック API、つまり Web サイト A、B、C に対してノンブロッキング呼び出しを行い、結果を JSON データとして Rails アプリに転送しようとしています。これが別のフォーラムの node.js で可能かどうかを尋ねたところ、可能であると思われ、誰かが node.js ステップ モジュールと非同期ライブラリを使用するこのソリューションを指摘してくれました。

最近、同様の質問 hereも見つけました。答えは、私が聞いたことのないjs拡張内で利用可能な forkjoin 演算子を使用することを示唆しています。「リアクティブjs」。

したがって、私が理解できることから、これを行うには2つの方法があります。最初の方法は node.js を使用し、2 番目の方法は「リアクティブ」を使用してクライアント側から単純な複数の非同期 ajax 呼び出しを使用する方法です。

ある方法が別の方法よりも単にパフォーマンスが優れているかどうかを知りたいですか? ありがとう。意見/回答/提案をいただければ幸いです。

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

reactive-extensions-js - JS の Rx 拡張機能を使用してイベントをバッファリングする方法

入力からテキスト変更イベントを取得したくありませんが、1 秒あたり 3 つに制限します。

Rxは私の願いをサポートしますか? どうすればこの能力を達成できますか?