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

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
})
}
白衣染霜花
浏览 758回答 2
2回答

炎炎设计

没发现吗,上面的示例读取了res.data和err.data,这样就不用每个请求都写一遍res=res.data了。当然,不推荐这么做,应该用axios拦截器来实现://Addaresponseinterceptoraxios.interceptors.response.use(function(response){//Dosomethingwithresponsedatareturnresponse;},function(error){//DosomethingwithresponseerrorreturnPromise.reject(error);});
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript