我的命名空间模块带有一个名为 allItems()
的 getter 方法,用于从规范化状态获取值数组。
...
getters: {
allItems(state, getters, { entities }) {
return state.items.map(function (item){
return {...entities.product[item]};
});
}
}
当我尝试获取其他元素时,出现“您无法从 undefined
元素调用某些属性”错误。
如果我输入 console.log(entities)
,我可以看到元素数组,当我输入 console.log(entities.products)
时,我得到了一个观察者 {__ob__: Observer}
里面有数据但是当我把 console.log(entities.products[1])
例如,我得到了 undefined
.我应该怎么做才能解决这个问题?
最佳答案
我解决了这个问题,创建了一个名为 getEntityById
的方法 getter,如下所示
getters: {
getEntityById: (state) => (entity, id) => {
return state[entity][id];
}
}
并在 map 函数上调用它
关于vue.js - 从 Vuex getter 中的观察者获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54561119/