0
我想輪詢更改,並在達到所需值時Observable應完成(或等到超時)。現在我使用可以正常工作的過濾器,直到達到所需的值。但是我希望Observable在等待這個值時推送事件。RxJs直到達到期望值的可觀察間隔
例如,我等待狀態爲'成功',直到狀態變爲'成功',狀態'測試'從我的服務中返回。但由於過濾器正在等待'成功','測試'永遠不會返回。
我現在代碼:
return Observable
.interval(this.POLL_TIMEOUT)
.flatMap(() => this.getSingleProjectStatus(projectId, repoName))
.filter(data => this.finishedStatus(data.status))
.take(1)
.timeout(this.MAX_TIMEOUT, Observable.throw(new Error('Timeout')));