Vue3全局封装axios使用,代码示例
时间: 2023-08-12 09:00:08 浏览: 100
你可以按照以下步骤全局封装axios使用Vue3:
1. 首先,安装axios库。在命令行中运行以下命令:
```
npm install axios
```
2. 创建一个名为`axios.js`的文件,并在其中编写封装axios的代码。代码示例如下:
```javascript
import axios from 'axios';
// 创建一个axios实例
const instance = axios.create({
baseURL: 'https://api.example.com', // 设置接口的基础路径
timeout: 5000 // 设置超时时间
});
// 请求拦截器
instance.interceptors.request.use(
config => {
// 在发送请求之前做些什么,例如添加token等
return config;
},
error => {
// 对请求错误做些什么
console.error(error);
return Promise.reject(error);
}
);
// 响应拦截器
instance.interceptors.response.use(
response => {
// 对响应数据做些什么,例如处理错误码等
return response.data;
},
error => {
// 对响应错误做些什么
console.error(error);
return Promise.reject(error);
}
);
// 导出封装后的axios实例
export default {
install(app) {
app.config.globalProperties.$axios = instance;
}
};
```
3. 在你的Vue应用的入口文件(通常是`main.js`),引入并使用该封装后的axios实例。代码示例如下:
```javascript
import { createApp } from 'vue';
import App from './App.vue';
import axios from './axios';
const app = createApp(App);
// 使用封装后的axios实例
app.use(axios);
app.mount('#app');
```
现在,你就可以在整个Vue应用中通过`this.$axios`来发送请求了。例如,在组件中可以这样使用:
```javascript
export default {
mounted() {
this.$axios.get('/api/data')
.then(response => {
console.log(response);
})
.catch(error => {
console.error(error);
});
}
};
```
这样你就成功地全局封装了axios,并在Vue3中使用它发送请求。希望对你有帮助!如果有任何疑问,请随时提问。
阅读全文