問題タブ [behaviorsubject]

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 に答える
366 参照

c# - 行動サブジェクトで例外を処理する方法

私は行動の主題を持っています

次に、そのソースを次のようなもので処理します

エラーをスキップできるように withErrors に登録したいと思います。こんなキャッチでの試み。

そしてそれをこう呼ぶ

スキップは、行動主体の最後のエラーを繰り返さないようにする試みですが、残念ながらそのようには機能しません。スキップはエラーをスキップしませんが、有効なデータのみをスキップするため、動作サブジェクトの現在の状態からのエラーは通過し続けます。

エラーもスキップする Skip を書く賢い方法はありますか。これは不可能だと何かが私に言っていますが、うまくいけば私は間違っています

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

rspec - rspec は `subject` ブロックをメモ化しますか?

私が取り組んでいるコーディング標準では、関数をテストする仕様のグループには、呼び出される関数であるサブジェクトが必要であると指定されています。次のようになります。

ブロックの典型的な用途は、subjectテストしているクラスをインスタンス化することです:

スタイル ガイドの意図した効果は、テスト対象のメソッドごとに異なるサブジェクト ブロックを用意することです。これは私たちのテストを遅くしていますか? 通常の方法で使用subjectした場合、クラスごとに 1 つのサブジェクト ブロックのみを使用することで、組み込みのメモ化やその他の高速化の恩恵を受けるでしょうか?

余談:

私たちのスタイルがうまくいかないケースに遭遇しました。使用any_instance.should_receiveする場合、スタイル ガイドに従わないと、仕様が常に失敗します。代わりに、より伝統的なアプローチを使用する必要があります。ここでsubjectは、テストしているオブジェクトであり、仕様でそのオブジェクトに対してメソッドを呼び出します。

このスタイルで他に注意すべき点はありますか?

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

swift - RxSwift: ネストされたクエリと ReplaySubject

3 つの別々の API リクエストを使用して、3 種類のデータ ( ATypeBType、 ) をフェッチする必要があります。CTypeAPI によって返されるオブジェクトは、1 対多で関連付けられています。

  • 1 つATypeのオブジェクトが N 個のBTypeオブジェクトの親である
  • 1 つBTypeのオブジェクトは P オブジェクトの親CTypeです)

次の 3 つの関数を使用して、各型を取得しています。

ネストされたサブスクリプションを避けるために、これら 3 つの関数は次のように連鎖されていflatMapます。

の M 個のオブジェクトがある場合、上記のコードは正常に動作ATypeし、テキスト"One more item fetched"が MxNxP 回出力されるのを見ることができました。

を使用してチェーン全体にgetAll()ステータスの更新を配信する機能をセットアップしたいと思います。私の最初の考えは、次のようなものを書くことです:ReplaySubject<String>

しかし、この試みは失敗しました。つまり、以下print()は何も出力しません。

ロジックをどのように書き直す必要がありますか?

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

angular - Angular 2 で複数の Observable を組み合わせる方法

Angular 2 でプログラミングを始めたばかりで、サブスクライブ、サブジェクト、および BehaviorSubject について学び始めたところです。現在、サービスに保存され、コンポーネントに発行された値を取得するための複数のサブスクリプションがあります。私のアプリケーションは機能しますが、非常に非効率的であることはわかっています。私のコンポーネントで手に負えなくなったこと:

(そして、単一の値を取得し、毎回関数 getSession() を呼び出す他の5つのように)

私の Threat.service では:

だから私は試しました:

私の目的は、2つの値にアクセスする方法がわからなかったため、resが何であるかをテストすることでした...しかし、コンソールでこれを取得しています。;/

最終的には、 getSession() が必要とするすべての値をサービスから取得し、その関数を一度実行したいと考えています。concat、merge、または forkJoin を使用してサブスクリプションを結合する方法についてのヘルプまたは説明をいただければ幸いです。ありがとうございました!

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

javascript - RxJS 5: `BehaviorObservable` を作成できますか?

internal を保持するアプリのクラスを作成していBehaviorSubjectます。BehaviorObservableサブジェクトの値をパイプ処理するが、インターフェイスの「読み取り専用」のものしか持たない、対応する ' ' を公開する方法はありObservableますか? .next().error()およびメソッドは、.complete()内部でのみ使用可能にする必要があります。

Observable.create()サブジェクトの値をパイプするために使用するだけの問題ではありません (私は信じています) 。私の API のユーザーは.subscribe()、公開されたオブザーバブルを使用して、保存されている現在の値のコールバックをすぐに取得する必要があります。

一緒に何かをハックできるかもしれませんが、RxJS で既にできることを見逃しているだけだと確信しています。