【发布时间】:2020-07-03 14:19:29
【问题描述】:
我有一个加载器组件,它将在其中执行
created() {
this.$root.$on('show-loading', (vars) => {
this.loading = vars;
console.log('loader executed');
});
},
目前我可以从一个 vue 组件执行 show-loading 到 this.$root.$emit('show-loading', true);。
但是,我现在正尝试从我的 vuex 模块文件中执行代码。我得到一个错误
类型错误:“_this.$root 未定义”
有人知道从 vuex 访问根实例的正确方法吗?
【问题讨论】:
-
如果事件打算在 root 中设置一个变量,你可以只使用 Vuex state,并从 root 组件绑定到它。这将根与您的 Vuex 模块分离。
-
哦,对不起,我没有包括但没有事件没有设置根变量。
this.loading是组件级数据。 -
你仍然可以使用 Vuex 状态。