vue3中封装axios
- 安装axios
npm install axios --save
- 在src文件下创建api文件夹
- 在api文件中建立模板 ceshi.js
- 在模板文件中输入内容
import axios from 'axios'
var instance = axios.create({
baseURL:'http://localhost:8080/',
timeout: 6000
})
instance.interceptors.request.use(function (config) {
return config;
}, function (error) {
return Promise.reject(error);
});
instance.interceptors.response.use(function (response) {
return response.data;
}, function (error) {
console.log('拦截器报错');
return Promise.reject(error);
});
export default function (method, url, data = null) {
method = method.toLowerCase();
if (method == 'post') {
return instance.post(url, data)
} else if (method == 'get') {
return instance.get(url, { params: data })
} else if (method == 'delete') {
return instance.delete(url, { params: data })
}else if(method == 'put'){
return instance.put(url,data)
}else{
console.error('未知的method'+method)
return false
}
}
- 在api文件下创建接口文件 nav.js
- 在接口文件中输入内容
import req from './ceshi.js';
export const GETTREEDATA=function(e){
return req('post','/251280/123',{qwe:e})
}
export const three=function(e){
return req('get','/251280/12345?qwe='+e)
}
- 在vue文件中调用已经写好的函数
import {GETTREEDATA,three} from '../api/nav'
- 在事件或生命周期中调用
GETTREEDATA(123)
.then(res=>{
console.log(res)
})
three(123)
.then(res=>{
console.log(res)
})
以上就是封装axios接口的步骤,希望对你有所帮助