をチェーン:PromiseKit 3.0は、私は約束返す関数の書き込みをしようとしている
func sample() -> Promise<AnyObject> {
return Promise(1)
.then { _ -> Void in
debugPrint("foo")
}.then { _ -> Void in
debugPrint("foo")
}
}
私は最後のその文のエラーを取得する:
Declared closure result 'Void' (aka '()') is incompatible with contextual type 'AnyPromise'
私は印象の下に "ということでしたそれに関係なく、暗黙のうちに約束を返すべきである。私の考えは間違っていますか?私は明示的に?:
func sample() -> Promise<AnyObject> {
return Promise(1)
.then { _ -> Void in
debugPrint("foo")
}.then { _ -> Promise<AnyObject> in
debugPrint("foo")
return Promise(1)
}
}
おかげ
優れた説明をありがとう。ソースとドキュメントを読んでこれを理解するのは難しいです。'firstly 'の後のブロックの中で' debugPrint( "foo") '行のメンバー' debugPrint(_:separator:terminator:)'への曖昧なエラー '曖昧な参照を取得します。 { - >ボイド でdebugPrint( "FOO") _} .then {_ - で> ANYOBJECT 'プロミスを返す.then {満たす、= 1 VAR魚に拒否}。しかし、私は、次への置き換え1 } 'それはうまくいく@JefferyThomas –
bunana