【发布时间】:2017-02-09 09:31:08
【问题描述】:
我已阅读 Rx.js repeat 文档,以了解如何根据从 API 收到的响应继续调用 api。我打电话给API,它一次只能发回2k 记录。 API 将返回一个值让我发送,以便我可以继续接收记录,直到它们返回完成值。
所以流程如下:
- 发出
GET请求查询参数reqMode='': - 使用包含
reqMode和value或done的最后一个数组检索响应。 - 如果我收到
value,那么我需要发出相同的请求,但发送带有值的reqMode参数。 - 如果我收到
done,那么我将停止并返回自第一次通话以来的所有记录。
subscribing normally 时我得到了第一组值,但这是我阅读文档后的尝试,但这没有意义:
getRecords(){
let url = this.url + 'reqMode=';
return this.http.get(url)
.doWhile() //What would I do here
}
当尝试使用 Observable<response> 类型的 Observable 执行 .doWhile 时。我正在寻找使用 Observables 来完成我需要做的任何替代方案。
【问题讨论】:
-
angular2 附带 rxjs5-beta 并且基于文档,您将无法使用 .doWhile... 至少目前还不能:github.com/ReactiveX/rxjs/blob/master/…。您在寻找替代解决方案吗?还是只适用于 rxjs4?
-
我可以选择替代方案。
标签: angular typescript rxjs rxjs5