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>
结果
————————————————
版权声明:本文为CSDN博主「hao_0413」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_41977619/article/details/116595972