如何快速从 Promise 返回值

问题描述

我有这样的功能

    func fetchPokemons() -> [Pokemon] {
    var pokemons : [Pokemon] = []
    service.fetchPokemons().done{ (newPokemons) in
        pokemons += newPokemons.pokemons!
        print(pokemons)
    }.catch { (error) in
        print(error)
    }
    print(pokemons)
    return pokemons
}

我需要获取口袋妖怪,然后将它们放入数组中。我的问题很明显。 Promise 是异步的,这就是我的函数返回空数组的原因。 .then 函数用于返回另一个 Promise,而 .done 返回 Void。那么我应该如何编写一个完成处理程序来返回填充的对象数组?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)