vuex mapState всегда требует имя модуля в качестве аргумента, даже если namespaced:false
Я ожидал, что если у меня есть модуль, который имеет namespaced:false
(что я думаю также является значением по умолчанию), тогда его состояние должно быть частью "глобального" или "корневого" пространства имен, и это я смог бы сделать " ...mapState('someStateAttribute')
а затем обратитесь к someStateAttribute
но казалось бы, что я должен использовать ...mapState('modulename','someStateAttribute')
или это не работает.
Это как раз тот случай? или я что-то упустил?
1 ответ
Решение
Посмотри на mapState
подпись:
mapState(namespace?: string, map: Array<string> | Object<string | function>): Object
Это означает первый аргумент, namespace
не является обязательным. Но если вы предоставите строку в качестве первого аргумента, это будет namespace
,
Чтобы достичь того, что вы хотите, вы должны сделать:
...mapState(['someStateAttribute'])