双重嵌套动态模块注册-vuex

And*_*Kim 4 javascript vue.js vuex

根据Vuex 文档,我们可以通过这种方式动态注册嵌套模块:

store.registerModule(['nested', 'myModule'], {
  // ...
})
Run Code Online (Sandbox Code Playgroud)

我们可以使用以下方式访问此状态store.state.nested.myModule

如何动态注册第一个模块中嵌套另一层的模块。IE。我怎样才能使模块暴露状态改为store.state.nested.furtherNested.myModule. 这是可以做的事情吗?

tha*_*ksd 5

您首先需要注册该furtherNested模块:

store.registerModule(['nested', 'furtherNested'], {
  // ...
})
Run Code Online (Sandbox Code Playgroud)

然后通过指定数组中的路径myModule来注册模块,如下所示:furtherNested

store.registerModule(['nested', 'furtherNested', 'myModule'], {
  // ...
})
Run Code Online (Sandbox Code Playgroud)

这是一个简单的例子:

store.registerModule(['nested', 'furtherNested'], {
  // ...
})
Run Code Online (Sandbox Code Playgroud)
store.registerModule(['nested', 'furtherNested', 'myModule'], {
  // ...
})
Run Code Online (Sandbox Code Playgroud)