报错现象如下:
产生原因:
在接口请求函数中使用了如下代码语句: return Promise.reject(res)
在请求函数中针对 请求异常报错情况下 直接将承载着错误信息的Promise对象给抛出,没有通过catch捕获错误,因而vue做出了警告。
//接口请求函数 async interfaceRequest({ commit }, params) { const [err, res] = await interfaceRequest() if (err) {
return Promise.reject(err) //这里直接将错误的promise对象返回 } commit('setRequestInfo', res.data) return res.data },
修改:
if (err) { err === 'canceled' || Message.error(err.errmsg) return //弹出错误提示信息,这里直接return掉 }
补:
对 Promise.reject() 情况的处理一般需要用try catch的方式捕获异常,然后再进行错误的处理。