2017-11-21 11 views
0

私は、問い合わせ時にその時点で処理された特定のオブジェクトのセットのステータス更新を返します。Angular HttpClientで自分の価値を得るまで、APIエンドポイントを '監視'してください。

など。 (オブジェクト:10、処理済:5)

Angular 5 HttpClientを使用して、私が望む結果(オブジェクト:10、処理済み:10)を得るまで、このAPIをクエリし続けるオブザーバブルを作成します10)。

私の考えは、これらの中間の「ステータス」更新をイベントとして送信し、条件が満たされて完全イベントを送信するときに観察可能オブジェクトを作成することです。

私はバッフルとは何ですか:事実は *そのHttpClientはコールドストリームです * APIからの単一の応答の後に完了するという事実です。

私は、新しいobservables(HttpClient)リクエストを作成し続け、それを自分の単一のobservableにマージし続ける必要があります。

RxJSと角度5でこれにアプローチする方法についてのアイデアはありますか?

は、あなたがこれを行うことができ、事前

+0

Tried Rxjs.flatMap? –

答えて

0

にありがとう:

Observable.interval(1000) 
      .flatMap(() => this.someService.callApi()) 
      .filter(actualResult => actualResult === expectedResult) 
      .takeWhile(actualResult => actualResult === expectedResult) 
      .subscribe(() => // handle your data here) 

これは、まで続くであろう、API呼び出しの結果の観測可能にそれを回す、毎秒間隔のストリームを開始します所望の結果が見出される。

関連する問題