异步类方法停止工作,为什么?

时间:2019-05-28 00:17:59

标签: javascript react-native ecmascript-6 async-await

以下用于工作的代码(声明为异步的类方法):

    async reload() {
        const {
            resetState,
            getPhotos,
            uploadPendingPhotos,
        } = this.props
        await resetState()
        await getPhotos()
        await uploadPendingPhotos()
    }

升级到最新版本

"react-native": "0.59.8"

必须将其重写为以下版本以使其再次运行:

    reload() {
        const {
            resetState,
            getPhotos,
            uploadPendingPhotos,
        } = this.props
        resetState().then(() => {
            getPhotos().then(() => {
                uploadPendingPhotos()
            })
        })
    }

否则,它将抱怨未兑现承诺,并抱怨resetState方法为只读。

有什么想法吗?我的大多数组件中都有异步方法,将它们重写为promise是不可行的解决方案。我真的想从异步/等待中受益。

0 个答案:

没有答案