vue封装自定义axios公共接口请求方法,支持异步返回结果
匿名 · 更新于 2020/4/26
公共方法部分(注意要引入qs,用以支持post传参)
import qs from 'qs'; //引入qs
/**
* 请求接口公共方法
*/
myRequest(reqMethod, params = {}, reqType = 'post') {
return new Promise((resolve, reject) => {
//执行异步ajax请求
const url = '/api/'+reqMethod;
console.log(url);
let promise
switch (reqType) {
case 'post':
promise = this.axios.post(url, qs.stringify(params));
break;
case 'get':
promise = this.axios.get(url, {params: params});
break;
}
promise.then(response => {
console.log('请求成功');
//成功的回调函数
resolve(response.data)
}).catch(error => {
console.log('请求失败');
//失败的回调函数
reject(error)
})
}
)
}
调用方式
this.$myfun.myRequest('doLogin').then((result) => {
console.log(result);
});
