4

これがコードです...

login().then {

    // our login method wrapped an async task in a promise
    return API.fetchKittens()

}.then { fetchedKittens in

    // our API class wraps our API and returns promises
    // fetchKittens returned a promise that resolves with an array of kittens
    self.kittens = fetchedKittens
    self.tableView.reloadData()

}.catch { error in

    // any errors in any of the above promises land here
    UIAlertView(…).show()

}

thenメソッドが何も返さないことを確認してください。

コンパイラを使用thenすると、約束を返さなければならないと言っています。しないという選択肢がないのはなぜですか?

直後に catch 句を追加すると、エラーはなくなります。は?

4

2 に答える 2

3

ここで答えてください。

-> Voidクロージャーパラメーターの後に追加しました。

.then { fetchedKittens -> Void in }
于 2015-10-27T14:54:10.513 に答える
3
于 2018-04-24T16:00:56.100 に答える