头大 Promise回调问题

checkCookieValue({state,commit}) {
    return new Promise((resolve, reject) => {
        axios.post('/api/checkcookie')
            .then(function (response) {
                state.user_status = response.data.success;
                resolve(response);
            })
            .catch(function (error) {
                console.log(error);
            })
    })
}

    
store.dispatch("checkCookieValue").then(function (responese) {
            return  store.state.user_status;
        })
        
        

checkTokenValue(){
    let tokenValue = this.getCookieValue();
    if (tokenValue !== null) {
        store.dispatch("checkCookieValue").then(function (responese) {
            return  store.state.user_status;
        })
    } else {
        return true
    }
}

我去,我真搞不懂这个回调。。。我要吐血

阅读 1.2k
1 个回答

改用async await

checkCookieValue({state,commit}) {
    return new Promise((resolve, reject) => {
        axios.post('/api/checkcookie')
            .then(function (response) {
                state.user_status = response.data.success;
                resolve(response);
            })
            .catch(function (error) {
                console.log(error);
            })
    })
}

    
    
checkTokenValue = async() => {
    let tokenValue = this.getCookieValue();
    let result;
    if (tokenValue !== null) {
         result =  await store.dispatch("checkCookieValue");
         return result;
    } else {
        return true
    }
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题