PromiseKit 编译错误
PromiseKit compilation errors
我是 PromiseKit
的新手,但是我无法获得一些非常基础的东西。考虑一下:
func test1() -> Promise<Bool> {
return Promise<Bool>.value(true)
}
func test2() -> Promise<Bool> {
return Promise<Bool> { seal in
seal.fulfill(true)
}
}
func test3() -> Promise<Bool> {
return Promise<Bool>.value(true)
}
下面给出了每一行的错误:
Cannot convert value of type Promise<Bool>
to closure result type
Guarantee<()>
firstly {
test1()
}.then {
test2()
}.then {
test3()
}.done {
}.catch {
}
我做错了什么?我一直在尝试各种组合,但似乎没有任何效果。我在 PromiseKit 6.13
.
来自 PromiseKit
故障排除 guide:
Swift does not permit you to silently ignore a closure's parameters.
所以你必须 specify 像下面这样的闭包参数:
firstly {
test1()
}.then { boolValue in
self.test2()
}.then { boolValue in
self.test3()
}.done { _ in
}.catch { _ in
}
甚至将 _
名称分配给参数(确认参数存在但忽略其名称)
firstly {
test1()
}.then { _ in
self.test2()
}.then { _ in
self.test3()
}.done { _ in
}.catch { _ in
}
我是 PromiseKit
的新手,但是我无法获得一些非常基础的东西。考虑一下:
func test1() -> Promise<Bool> {
return Promise<Bool>.value(true)
}
func test2() -> Promise<Bool> {
return Promise<Bool> { seal in
seal.fulfill(true)
}
}
func test3() -> Promise<Bool> {
return Promise<Bool>.value(true)
}
下面给出了每一行的错误:
Cannot convert value of type
Promise<Bool>
to closure result typeGuarantee<()>
firstly {
test1()
}.then {
test2()
}.then {
test3()
}.done {
}.catch {
}
我做错了什么?我一直在尝试各种组合,但似乎没有任何效果。我在 PromiseKit 6.13
.
来自 PromiseKit
故障排除 guide:
Swift does not permit you to silently ignore a closure's parameters.
所以你必须 specify 像下面这样的闭包参数:
firstly {
test1()
}.then { boolValue in
self.test2()
}.then { boolValue in
self.test3()
}.done { _ in
}.catch { _ in
}
甚至将 _
名称分配给参数(确认参数存在但忽略其名称)
firstly {
test1()
}.then { _ in
self.test2()
}.then { _ in
self.test3()
}.done { _ in
}.catch { _ in
}