xyy-vue
xyy-vue copied to clipboard
axios按照你封装,然后then()里面不执行
我想问下为什么,是不是因为使用promise的原因,求help
你catch一下,看是不是请求出错了
解决了,我看了下是你在配置axios时,判断放回状态成功时用的是reject导致后续不执行,我换成resolve就可以(我理解的)。
@YTU94
//返回状态判断(添加响应拦截器) axios.interceptors.response.use((res) => { //对响应数据做些事 if (!res.data.success) { return Promise.reject(res); } return res; }, (error) => { // _.toast("网络异常", 'fail'); return Promise.reject(error); });
其中如果 res.data.success 不存在,走reject,可能是这有问题。比如我们后端一直返回res.data.status='ok'啥的,么有success
了解了,谢谢
每个服务器返回的成功标志不一样,大部分返回status=200
//返回状态判断 axios.interceptors.response.use((res) =>{ if(!res.status==200){ // _.toast(res.data.msg); return Promise.reject(res); } return res; }, (error) => { // _.toast("网络异常", 'fail'); return Promise.reject(error); });
把楼主的if (!res.data.success) 改为 if(!res.status==200) 我本地测试OK