当我们引入了axios包之后需要开始使用它,这里是将axios封装了一下,我们需要新创建一个目录。
import axios from 'axios'
let address = ''//正式域名
// let address = '/api';//测试域名
export const post = function postPromise(params, path) {
return new Promise((resolve,reject) => {
axios.post(address + path,
params
).then( (res) => {
if(res.status=='200'){
resolve(res.data)
}else{
}
}).catch( (err) => {
reject(err);
});
})
};
export const get = function getPromise(params, path) {
return new Promise((resolve,reject) => {
axios.get(address + path, {
params: params
}).then( (res) => {
if(res.status=='200'){
resolve(res.data)
}else{
console.log(res);
}
}).catch( (err) => {
reject(err);
});
})
};
export const put = function putPromise(params, path) {
return new Promise((resolve,reject) => {
axios.put(address + path,
params,
).then( (res) => {
if(res.status=='200'){
resolve(res.data)
}else{
console.log(res);
}
}).catch( (err) => {
reject(err);
});
})
};
上面的代码就是require.js中的方法,创建完毕之后
在需要用到axios 的文件中的script里引入一下。
let data = {
parent_id: localStorage.getItem("uId")
}
api.get(data, '/parents/getStudentList').then(res => {
}, err => {
})
然后这样写就可以了,封装过的好处就是可以比不封装要少些一些代码。
当然不封装也可以,不封装我们在引入了包之后直接写就可以了,如下:
this.$axios
.get("/api/parents/getStudentList", {
params: {
parent_id: 1
}
})
.then(function(response) {
console.log(response)
})
.catch(function(error) {
console.log(error);
});
get,post,put,delete每个请求方式在传递参数时有些许差异这个直接看官方文档就可以了,写的很清楚http://www.axios-js.com/docs/
好几天没记录了,抽时间统一记录一下,有不对的地方希望看到的大佬可以指正一下,感激不尽