rxjsを使用してhttp要求で間隔を設定したいとします。リクエストが完了してからn秒後にサーバー上のデータを送信する必要があります。角度2でrxjsを使用して間隔で非同期を要求する方法
Observable.interval(10000)
.?(() => {
//request for server. return Observable
return this.getData();
})
.subscribe(() => {
console.log("Request done. After 10 second will be next request");
});
マーク
ngOnInit() {
this.getData()
.expand(() => Rx.Observable.timer(10 * 1000)
.concatMap(() => this.getData())
)
.subscribe(data => {
console.log('received new data', data);
});
}
private getData() {
return Observable.timer(5000)
.do(() => console.log("timer"));
}
質問は更新です。私は正しいことを理解していますか? – Illorian
私は '.expand()'演算子について知りませんでした....興味深いです:)私は常に、これらの種類のストリーム自動フィードバックを使用してかなり悪いと感じました(これが私が " ") – olivarra1
@ olivarra1しかし、このコードでは奇妙な – Illorian