2017-06-18 59 views
4

我在命名空间模块和全局突变(即不在模块中)中有一个操作。我希望能够在行动中承担全球变化。Vuex |如何在模块操作中提交全局变化?

// Global mutation 
export default { 
    globalMutation (state, payload) { 
    ... 
    } 
} 

// Action in a namespaced module 
export default { 
    namespaced: true, 

    actions: { 
    namespacedAction ({ commit, dispatch, state }, payload) { 
     commit({ type: 'globalMutation' }) 
    } 
    } 
} 

当命名空间的作用被分派,Vuex显示:

[vuex] unknown local mutation type: globalMutation, global type: module/globalMutation 

是否有一个选项,我可以传递给commit函数来调用这个全球性的突变?

回答

9

看起来我只是找到了一个{ root: true }参数的方法。

commit('globalMutation', payload, { root: true })