java - 对列表中的所有项目执行一个任务,然后在 RxJava 中执行另一个任务
问题描述
不幸的是,我的 REST 删除操作仅适用于一项。所以我想做的是,
Observable.just(items).flatMapIterable { items -> items }.flatMap {
//call REST DELETE for every item
}.flatMap {
// call REST GET
}
问题是每个项目都调用了 GET 调用。如何等待完成所有删除操作然后执行 GET 调用?
提前致谢。
解决方案
在您的情况下,您可以toList()
像这样申请
fun doTask(items: List<String>):Observable<Boolean>{
return Observable.fromIterable(items)
.flatMap { processItem(it) }
.toList()
.toObservable()
.flatMap { finalTask() }
}
推荐阅读
- excel - 如何将多个搜索添加到单个代码
- flutter - InheritedWidget 在小部件树 Flutter 中将数据设为 null
- php - Mysql:按日期交集选择,而不是之间
- c# - 任意大小的 C# ValueTuple
- javascript - 如何防止通过 JavaScript 访问我的网站
- php - 为什么我没有从数据库中获取 $user_name?
- javascript - RxJS:将对象键映射到可观察对象
- swift - 使用故事板中定义的自定义类
- c# - 在 ASP.NET Core 中使用 except 方法时显示不正确的答案
- c# - 如何在c#中更改字符串格式