axios 的二次封装在vue框架中可以这么写吗?


import Vue from 'vue'
import axios from 'axios'
import VueAxios from 'vue-axios'

const requests = axios.create({
   // 配置对象
   // 基础路径,发请求的时候会出现api
   baseURL:"/api",
   // 代表请求超时的时间
   timeout:5000,
});
// 请求拦截器,发送请求之前,请求拦截器可以拦截到请求发送之前的一些事情
requests.interceptors.request.use((config)=>{
   return config
})
// 相应拦截器
requests.interceptors.response.use(
   (res)=>{
      // 成功的回调函数
      return res.data;
   },(error)=>{
      // 响应失败的回调函数
      return Promise.reject(new Error("false"));
   })
   export default requests;
// use(): 可以把外部插件注入到vue对象实例中
Vue.use(VueAxios,axios)

常规讲 不会直接使用Vue.use(VueAxios,axios)
可以看下这个https://blog.csdn.net/Genius_cxx/article/details/97788044?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164992204816780261976938%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=164992204816780261976938&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-1-97788044.nonecase&utm_term=axios&spm=1018.2226.3001.4450

建议你 export 一下 二次封装的 axios,在 main.js中引入,在用Vue.use(VueAxios,axios) 全局使用