vue3全局挂载属性和方法,在main.js中通过app.config.globalProperties
将方法或者属性挂载到全局:
// main.js
import { createApp } from 'vue
import App from './App.vue'
const app = createApp(App)
app.config.globalProperties.$mes = '全局属性'
app.mount('#app')
在组件中使用:
- 通过
getCurrentInstance
的appContext
使用 - 通过
getCurrentInstance
的proxy
使用
// 组件内
import { getCurrentInstance } from 'vue'
// proxy 方式
const { proxy } = getCurrentInstance() */
console.log(proxy, proxy.$mes)
// appContext 方式
const { $mes } = getCurrentInstance().appContext.config.globalProperties
console.log($mes)
ps:我在项目中使用第二种方式没有获取到挂载的属性,改用了第一种方式