首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将[Future<Object,Error>]转换为Future<[Object],Error>

将[Future<Object,Error>]转换为Future<[Object],Error>
EN

Stack Overflow用户
提问于 2019-12-04 09:28:09
回答 1查看 25关注 0票数 0

有没有什么方法可以解析下面的代码并以数组Future的形式返回它的值。我使用的是未来的BrightFutures实现

代码语言:javascript
复制
return apiService.getArrayObject()
   .flatMap(NetworkQueue.context) { (arrayObjects: [ArrayObject]) -> Future<[Object], Error> in
      let objects = arrayObjects.map {
         apiService.getObject(of: $0.objectId)
      }
      return objects // ERROR since objects is [Future<Object,Error>] rather than needed output
    }
EN

回答 1

Stack Overflow用户

发布于 2019-12-04 17:22:45

使用顺序

代码语言:javascript
复制
   return apiService.getArrayObject()
      .flatMap(NetworkQueue.context) { (arrayObjects: [ArrayObject]) -> Future<[Object], Error> in
          let objects: [Future<Object, Error>] = arrayObjects.map {
              apiService.getObject(of: $0.objectId)
          }
          let sequenceFuture: Future<[Object], NoError> = objects
                    .sequence()

         return sequenceFuture
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59167706

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档