【发布时间】:2020-04-04 20:22:19
【问题描述】:
我有这样的store/index.js
new Vuex.Store({
modules: {
nav: {
namespaced: true,
modules: {
message: {
namespaced: true,
state: {
count: 0,
conversations: [],
},
getters: {
getCount: state => {
return state.count;
},
},
mutations: {
updateCount(state) {
state.count++;
},
},
actions: {},
},
requests: {
namespaced: true,
state: {
friends: [],
},
getters: {
getFriends: state => {
return state.friends;
},
},
mutations: {
pushFriends(state, data) {
state.friends.push(data);
},
},
actions: {
pushFriends(commit, data) {
commit('pushFriends', data);
},
},
},
},
},
},
});
我想在我测试过的计算属性中使用 getter
computed: {
...mapGetters({
count: 'nav/message/getCount',
}),
},
对接错误
[vuex] 未知 getter:nav/message/getCount
这里缺少什么
我也想为每个模块创建单独的文件夹,比如我的导航有 3 个模块message, requests & notifications
我确实尝试过,但 nuxt 炸毁了我的代码
【问题讨论】:
-
试试这个:count: 'getCount',
-
count: 'nav/message/getCount'有什么不同 -
我认为你的代码是错误的。在您的商店中,每个文件都是一个子模型,因此您不需要创建嵌套属性。创建一个新文件,例如。 messages.js 并且您可以使用 messages/getterName。
-
@henrique 你能发布工作代码吗
-
请修正您的标题 NASTED 错误,改为 NESTED。谢谢
标签: vue.js vuex nuxt.js vuex-modules