gpt4 book ai didi

ios - PromiseKit 可选链 Swift

转载 作者:行者123 更新时间:2023-11-30 12:40:18 37 4
gpt4 key购买 nike

我如何进行可选 promise 链接?例如,我有两个 promise ,我必须仅根据第一个 promise 结果的某些条件来检查第二个 promise 。

promise1(). then { result -> Promise? in
if result.success {
return promise2()
}
return nil
}
.then { secondResult -> Void in

}
.always {...}
.catch ...

但是当我写这样的东西时,编译器认为类型是 Promise?,而不是 Any (位“Any”我指的是任何其他类/结构)

那么,我如何才能进行某种链接呢?并且应该像往常一样有一个always和一个catch处理程序。

最佳答案

我想你想要这样的东西:

let p = Promise<Int>() { fulffill, reject in
fulffill(0)
}.then { result -> Promise<Any>? in
if result == 0 {
return Promise(value: 5)
} else if result == 1 {
return Promise(value: "test")
} else {
return nil
}
}.then { secondResult -> Void in
print("\(secondResult?.value)")
}.always {
print("Final!")
}

如果result为0,则secondResult.value将为Int,值为5,如果result为1,则secondResult。值将是“测试”。然后你可以使用第二个 Promise 中的结果来做出决定。

关于ios - PromiseKit 可选链 Swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42316074/

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