vuex mapState 是否总是需要模块名称作为参数,即使 namespaced:false
does vuex mapState always require module name as argument even if namespaced:false
我期望如果我有一个模块有 namespaced:false
(我认为这也是默认的)那么它的 state 应该是 "global" 或 "root" 命名空间,我可以执行 " ...mapState('someStateAttribute')
然后引用 someStateAttribute
但似乎我必须使用 ...mapState('modulename','someStateAttribute')
否则它会不工作。
仅此而已吗?还是我遗漏了什么?
mapState(namespace?: string, map: Array<string> | Object<string | function>): Object
这意味着第一个参数 namespace
是可选的。但是,如果您提供一个字符串作为第一个参数,它将是 namespace
.
要实现你想要的,你应该做的:
...mapState(['someStateAttribute'])
我期望如果我有一个模块有 namespaced:false
(我认为这也是默认的)那么它的 state 应该是 "global" 或 "root" 命名空间,我可以执行 " ...mapState('someStateAttribute')
然后引用 someStateAttribute
但似乎我必须使用 ...mapState('modulename','someStateAttribute')
否则它会不工作。
仅此而已吗?还是我遗漏了什么?
mapState(namespace?: string, map: Array<string> | Object<string | function>): Object
这意味着第一个参数 namespace
是可选的。但是,如果您提供一个字符串作为第一个参数,它将是 namespace
.
要实现你想要的,你应该做的:
...mapState(['someStateAttribute'])