如何在 Vue 中将 Axios 导入 main.js?

时间:2021-04-26 10:31:36

标签: javascript vue.js npm import axios

我似乎无法在我的 vue 项目中使用 axios,因为它说当我尝试在我的 Home.vue 文件中使用 axios.get() 时未定义“axios”。我在配置它的 main.js 中做错了什么吗?还是我错过了需要添加的东西?下面是我的 main.js 代码,它显示了我如何将 axios 添加到我的项目中。

import Vue from 'vue';
import GSignInButton from 'vue-google-signin-button';
import ElementUI from 'element-ui';
import axios from 'axios';
import './assets/element-variables.scss';
import locale from 'element-ui/lib/locale/lang/en';
import App from './App.vue';
import router from './router';
import store from './store';

Vue.config.productionTip = false;
Vue.use(ElementUI, { locale });
Vue.use(GSignInButton);
Vue.use(axios);
Vue.use(ElementUI);

new Vue({
  router,
  store,
  render: (h) => h(App),
}).$mount('#app');

编辑: 对我来说这个问题的解决方案是安装一个名为 vue-axios 的 vue 插件并按照此处的步骤进行配置:https://www.npmjs.com/package/vue-axios

1 个答案:

答案 0 :(得分:0)

尝试添加 axios 作为实例全局属性而不是 Vue.use(axios);

Vue.prototype.$axios=axios

然后你可以在任何子组件中使用它,比如 this.$axios.get()

详细了解adding-instance-properties