在 Vuex 中,为什么模块的状态访问为 'store.state.module' 而不是 'store.module.state'?
In Vuex, why are the module's state accessed as 'store.state.module' instead of 'store.module.state'?
在下面的代码中,为什么 moduleA
的状态是用 store.state.a
而不是 store.a.state
访问的?
由于 store
持有 moduleA
,而 moduleA
持有其 state
,如果 moduleA
的 state
对我来说更有意义=] 是通过 store.a.state
.
访问的
const moduleA = {
state: () => ({ ... }),
...
}
const moduleB = {
state: () => ({ ... }),
...
}
const store = new Vuex.Store({
modules: {
a: moduleA,
b: moduleB
}
})
store.state.a // -> `moduleA`'s state
store.state.b // -> `moduleB`'s state
之所以是store.state.a
而不是store.a.state
是因为Vuex中只有一个状态对象。在引擎盖下,所有模块都组合到一个状态对象中。
Vuex 文档可以为您提供更多信息。
在下面的代码中,为什么 moduleA
的状态是用 store.state.a
而不是 store.a.state
访问的?
由于 store
持有 moduleA
,而 moduleA
持有其 state
,如果 moduleA
的 state
对我来说更有意义=] 是通过 store.a.state
.
const moduleA = {
state: () => ({ ... }),
...
}
const moduleB = {
state: () => ({ ... }),
...
}
const store = new Vuex.Store({
modules: {
a: moduleA,
b: moduleB
}
})
store.state.a // -> `moduleA`'s state
store.state.b // -> `moduleB`'s state
之所以是store.state.a
而不是store.a.state
是因为Vuex中只有一个状态对象。在引擎盖下,所有模块都组合到一个状态对象中。
Vuex 文档可以为您提供更多信息。