ios - Swift & PromiseKit : Resolving ALL promises from a loop

原文 标签 ios swift swift3 promise promisekit

我正在 Swift3 中寻找解决方案来一次性解决动态数量的 promise ,例如像 JavaScript 中的这个示例:

var promises = [];
for(var i = 0; i < 5; i++) {
    var promise = $http.get('/data' + i);
    promises.push(promise);
}
$q.all(promises).then(doSomethingAfterAllRequests);

https://daveceddia.com/waiting-for-promises-in-a-loop/

Swift2 有一个名为“Craft”的库可以做到这一点( https://github.com/supertommy/craft ),但它不再维护。

有谁知道我是否或如何使用 PromiseKit 或其他库来做到这一点?

一堆!

最佳答案

您可以查看when这可能会提供您需要的内容并涵盖here .

使用循环将您的 promise 放入一个数组中,然后执行以下操作:

when(fulfilled: promiseArray).then { results in
    // Do something
}.catch { error in
    // Handle error
}

关于ios - Swift & PromiseKit : Resolving ALL promises from a loop,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43700548/

相关文章:

ios - 应用程序崩溃“libc++ abi.dylib:以类型为NSException(lldb)的未捕获异常终止”

swift - RX快速合并和枚举

ios - 这个UITableView无法显示在我的 View Controller 上的原因是什么?

ios - 添加 AFNetworking 后出现 APPLE MACH-O 链接错误

ios - 拍摄数据快照时,Firebase NSNull异常

swift - 游戏中心的比赛总是无效的

ios - 没有'.. <'候选者产生预期的上下文结果类型'NSRange Swift 3

ios - 从Swift 3.0到Swift 4.2的转换错误“无法将类型'[String]'的值分配给类型'[AVMetadataObject.ObjectType]吗?'”

ios - 重用UITableViewCell

android - 开发服务器以托管智能手机应用内容