Vuex:处理从另一个命名空间模块分派的命名空间模块中的根操作

时间:2018-06-26 23:23:32

标签: vue.js vuex

Vue 2.3.4

我有2个以上命名空间的Vuex模块。第一个是Datepicker模块,用于存储日期范围状态。其他模块需要知道日期范围何时更改。因此,我的目的是让多个模块“监听”单个调度的datesChanged事件。

Datepicker(:

namespaced: true,
actions: {
   setDates ({ dispatch, commit }, dates) {
      // do stuff
      dispatch('datesChanged', dates, { root: true });
   }
}

ModuleX,ModuleY,ModuleZ ...

namespaced: true,
actions: {
    datesChanged: {
        root: true,
        handler({ dispatch }, dates) {
            console.log('moduleX datesChanged', dates);
        }
    }
}

据此:https://vuex.vuejs.org/guide/modules.html#accessing-global-assets-in-namespaced-modules我做对了...,但我不断收到此错误:unknown action type: datesChanged

我对Vue还是很陌生,但是我在这里所拥有的(至少对我来说)是有意义的。我想念什么?似乎Vuex不在根目录上注册我的datesChanged处理程序。

(编辑:明确意图)

0 个答案:

没有答案