vue中没办法使用this.$axios

使用以后就提示没有$axios

img

//main.js
import axios from "axios";
Vue.use(axios)
Vue.prototype.$axios = axios

//main.js use在最后引入
import axios from "axios";
Vue.prototype.$axios = axios;
Vue.use(axios)

直接在main.js这样写,不需要其他操作
use的作用就是挂载到原型上

import axios from "axios";
Vue.prototype.$axios = axios;

Vue.use(axios)这句不要,跟下面的语句冲突了

你说的是编辑器没有提示吧
在 src 目录下新建一个文件 shims-vue.d.ts,写入以下内容就有提示了

import { AxiosStatic } from 'axios'

declare module 'vue/types/vue' {
  interface Vue {
    /** axios 请求 */
    $axios: AxiosStatic
  }
}

img

脚手架下载axios后在main.js进入即可,看你问题提供的好像引入的有些不对,应该是

import axios from 'axios'
import VueAxios from 'vue-axios'
 
//配置后端服务地址
axios.defaults.baseURL="http://localhost:8080/xxxxx/";
//添加的配置
axios.defaults.withCredentials = true;
//在Vue中配置axios,在所有的Vue组件中就可以通过this.axios使用axios库
Vue.use(VueAxios,axios);