我使用以下设置从API检索对象(例如GitHub问题)。这很好。
let provider: RxMoyaProvider<GitHub>
let issues: Driver<[IssueViewModel]>
init(provider: RxMoyaProvider<GitHub>) {
self.provider = provider
issues = provider.request(.Issue)
.mapArray(Issue.self, keyPath: "issues")
.asDriver(onErrorJustReturn: [])
.map { (models: [Issue]) -> [IssueViewModel] in
let items = models.map {
IssueViewModel(name: $0.name,
description: $0.description
)
}
return items
}
}
现在我想定期更新问题列表(例如,每20秒)。我想到NSTimer
来完成这项任务,但我想可能有一个干净的(呃)解决方案(即以Rx的方式),我没有想到。
非常感谢任何正确方向的暗示。
答案 0 :(得分:9)
这与this question/answer非常相似。
您应该使用<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="root">123</div>
然后使用timer
:
flatMapLatest
答案 1 :(得分:2)
您可能正在寻找 var driver: Driver<String> {
return Driver<Int>.interval(1.0).map { _ in
return "test"
}
}
driver.asObservable().subscribeNext { (variable) in
print(variable)
}
运营商。
以下是```{r}
rasList <- list.files("NDVI_Modis/AOI_NDVI", full.names = TRUE, pattern = ".tif$")
NDVI_Otjo_stack <- stack(rasList)
```
的循环示例,它将继续打印&#34; test&#34;每一秒。
链接到文档:http://reactivex.io/documentation/operators/interval.html
Quitting from lines 42-44 (MODIS_TimeSeriesProcessor.Rmd)
Error in x[[1]] : subscript out of bounds
Calls: <Anonymous> ... stack -> stack -> .local -> stack -> stack -> .local
Execution halted