为了账号安全,请及时绑定邮箱和手机立即绑定

萌新求教!axios的二次封装为什么还要用promise,axios本身不就是返回promise吗各位有什么建议?

萌新求教!axios的二次封装为什么还要用promise,axios本身不就是返回promise吗各位有什么建议?

白衣染霜花 2019-06-09 09:24:21
exportfunctionget(url,params){returnnewPromise((resolve,reject)=>{axios.get(url,{params:params}).then(res=>{resolve(res.data);}).catch(err=>{reject(err.data)})});}难道这样不可以吗exportfunctionget(url,params){returnaxios.get(url,{params:params})}
查看完整描述

2 回答

?
炎炎设计

TA贡献1808条经验 获得超4个赞

没发现吗,上面的示例读取了res.data和err.data,这样就不用每个请求都写一遍res=res.data了。当然,不推荐这么做,应该用axios拦截器来实现:
//Addaresponseinterceptor
axios.interceptors.response.use(function(response){
//Dosomethingwithresponsedata
returnresponse;
},function(error){
//Dosomethingwithresponseerror
returnPromise.reject(error);
});
                            
查看完整回答
反对 回复 2019-06-09
  • 2 回答
  • 0 关注
  • 757 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信