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



我似乎无法在我的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

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

Vue.prototype.$axios=axios

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

了解有关添加实例属性的更多信息

最新更新