• Vue3.x已经不支持直接Vue.prototype.$xxx =xxx这种方式来挂载全局对象,这是由于globalVue不再是构造函数,因此不再支持该构造函数
    在这里插入图片描述

  • 更新后的挂载方法
    在这里插入图片描述

  • main.js中通过 config.globalProperties 进行全局挂载

import { createApp } from 'vue'
import App from './App.vue'
const app = createApp(App);
// Vue3全局挂载名称
app.config.globalProperties.$vueName = 'Vue3全局挂载名称'
app.mount('#app')
  • 获取方法通过 getCurrentInstance 获取proxy,再获取全局挂载的实例
<script>
import { defineComponent, getCurrentInstance } from 'vue'
export default defineComponent({
  setup(){
    const { proxy } = getCurrentInstance()
    console.log(proxy.$vueName)
    return {}
  }
})
</script>
  • 结果
    在这里插入图片描述
Logo

前往低代码交流专区

更多推荐