加入PromiseKit 3.0失败

时间:2015-11-03 21:06:52

标签: swift promisekit

我有一系列的承诺,我需要解决它们并列出成功的列表。据我了解,我需要使用join来做到这一点。但是,当我写:

let promises: [Promise<Request>] = /* ... */
let foo = join(promises)

我收到编译时错误Cannot invoke 'join' with argument list of type '([Promise<Request>])'

我做错了什么,或者join无法在Swift中工作?

1 个答案:

答案 0 :(得分:0)

由于这个问题得到了投票,我认为我应该发布我的最终解决方案。

首先,通过实施http://www.drivenbycode.com/the-missing-apply-function-in-swift/

中的join函数来完成使用数组调用apply
func apply<T, U>(fn: (T...) -> U, args: [T]) -> U {
    typealias FunctionType = [T] -> U
    return unsafeBitCast(fn, FunctionType.self)(args)
}

其次,事实证明,加入并没有做我所需要的。我最后编写了自己的函数,我称之为anyCollect array of successful promises