在vue3中,可以使用 app.config.globalProperties来注册全局属性的对象,其中app是通过createApp()方法创建后的Vue实例化对象,它替代了Vue2中的Vue.prototype方式,无论是Vue3中的组件式API还是选项式API,都可以轻松访问到它的值。
如果需要在Vue3项目中全局配置axios对象,只需要在main.js文件中添加如下代码:
csharp
import { createApp } from 'vue'
import App from './App.vue'
import Global from './components/ch6/Global'
import router from './router/index'
import request from './plugins/axios';
let app = createApp(App);
app.config.globalProperties.$http = request;
app.component("Global", Global);
app.use(router);
app.mount('#app')
在上述加粗代码中,先导入一个名称为request的axios实例对象,再调用app中的config.globalProperties对象,添加一个自定义名为 h t t p 的属性,最后,将 r e q u e s t 对象赋值给 http的属性,最后,将request对象赋值给 http的属性,最后,将request对象赋值给http属性,通过这样操作之后,就可以在任意的组件中,通过this.$http方式访问到这个axios实例对象了。