从另一个模块提交突变

jma*_*cnc 4 vue.js vuex

我想在注销操作时重置我的商店的状态。我在每个商店中创建了突变来重置状态。

我尝试做这样的事情但没有运气。

logout: function ({commit}) {
        commit('resetLoginState')
        commit('menu.resetMenuState')
    }
Run Code Online (Sandbox Code Playgroud)

logout函数位于我的login模块中,resetMenuState位于另一个名为的模块中menu

是否有可能做到这一点?

Daw*_* K. 5

您可以使用:

commit('path/from/root/to/your/module/menu/resetMenuState', null, { root: true })
Run Code Online (Sandbox Code Playgroud)

您可以在此页面上阅读更多相关信息

  • 延伸@David 的回复。如果你的突变接受参数。您可以将它们作为第二个参数传递给提交,如下所示 `commit('path/from/root/to/your/module/menu/resetMenuState', {id: 2, name: "Anyhting"}, { root: true } )` (3认同)