在Vue 3.0中,我们可以使用 createApp
函数来创建一个应用实例,在该实例中可以挂载对象和方法,使其在全局范围内可用。
全局挂载对象
在应用实例中调用 provide
方法,然后将需要全局挂载的对象作为参数传递进去,即可实现全局挂载该对象。
// main.js
import { createApp } from 'vue'
import App from './App.vue'
const app = createApp(App)
const myObject = {
name: 'John',
age: 25
}
app.provide('myObject', myObject)
app.mount('#app')
在需要使用该对象的地方,调用 inject
方法并将变量名作为参数传递进去即可。
// 其他组件中
export default {
name: 'OtherComponent',
inject: ['myObject'],
mounted() {
console.log(this.myObject.name) // 输出 "John"
}
}
全局挂载方法
在应用实例中对 config
属性进行设置,即可实现全局挂载该方法。
// main.js
import { createApp } from 'vue'
import App from './App.vue'
const app = createApp(App)
app.config.globalProperties.$myMethod = function(value) {
console.log(value)
}
app.mount('#app')
在需要使用该方法的地方,可以使用 this
关键字来直接调用该方法。
// 其他组件中
export default {
name: 'OtherComponent',
mounted() {
this.$myMethod('Hello world') // 输出 "Hello world"
}
}
以上是Vue 3.0中实现全局挂载对象和方法的完整攻略,希望对您有帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:vue3.0如何在全局挂载对象和方法 - Python技术站