gpt4 book ai didi

xcode - PromiseKit 分支 promise

转载 作者:行者123 更新时间:2023-11-30 10:03:36 25 4
gpt4 key购买 nike

假设您的 Promise 链中有一个分支,它可以不返回任何内容,也可以返回 AnyObject Promise。您将指定什么作为“then”闭包的返回类型?例如:

func sample() -> Promise<AnyObject> {
return Promise { fulfill, reject in
fulfill(1)
}
.then { _ -> Void in
if false {
return Promise { fulfill, reject in
fulfill(0)
}
}
}
}

如果我将 Void 作为“then”闭包的返回类型,则会出现段错误;如果我将 Promise 作为返回类型,则会收到错误:

missing return in a closure expected to return Promise<AnyObject>

有什么建议吗?

谢谢

最佳答案

根据代码示例,我认为没有理由返回 AnyObject。如果您想选择性地返回 Void 或 Object,请做出包含可选值的 Promise。

func sample() -> Promise<AnyObject?> {
return Promise { fulfill, reject in
functionForGettingObjectWithCallback() { result: AnyObject? in
fulfill(result)
}
}
}

关于xcode - PromiseKit 分支 promise ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37200108/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com