即使命名空间为:false,vuex mapState总是要求模块名称作为参数

时间:2018-04-23 06:56:36

标签: vue.js vuex vuex-modules

我期待如果我的模块有namespaced:false(我认为也是默认模块),那么它的状态应该是" global&#34的一部分;或" root"命名空间,我能够做到" ...mapState('someStateAttribute'),然后参考someStateAttribute,但似乎我必须使用...mapState('modulename','someStateAttribute'),否则它无效。

这是不是这样?或者我错过了什么?

1 个答案:

答案 0 :(得分:2)

查看mapState's signature

mapState(namespace?: string, map: Array<string> | Object<string | function>): Object

这意味着第一个参数namespace是可选的。但是如果你提供一个字符串作为第一个参数,它将是namespace

要达到你想要的目标,你应该这样做:

...mapState(['someStateAttribute'])