【发布时间】:2021-11-08 22:50:19
【问题描述】:
在 vuejs 2 中,可以像这样将组件分配给主应用实例上的全局变量...
const app = new Vue({});
Vue.use({
install(Vue) {
Vue.prototype.$counter = new Vue({
data: () => ({ value: 1 }),
methods: {
increment() { this.value++ },
}
});
}
})
app.$mount('#app');
但是当我将其转换为 vue3 时,我无法访问任何属性或方法...
const app = Vue.createApp({});
app.use({
install(app) {
app.config.globalProperties.$counter = Vue.createApp({
data: () => ({ value: 1 }),
methods: {
increment() { this.value++ }
}
});
}
})
app.mount('#app');
这里是 vue2 的一个例子...https://jsfiddle.net/Lg49anzh/
这里是 vue3 版本...https://jsfiddle.net/Lathvj29/
所以我想知道这是否以及如何在 vue3 中仍然可行,或者我是否需要重构我所有的插件?
我试图使示例尽可能简单以说明问题,但如果您需要更多信息,请告诉我。
【问题讨论】: