【发布时间】:2021-03-21 23:17:20
【问题描述】:
我有一个 getter 对象数组。我正在使用 getter 内部操作并尝试对其进行过滤,但无论我做什么过滤都不起作用,它会返回所有映射的项目 ID。
filterItems({ getters, commit }) {
let filteredItems = getters.getAllItems
.filter(item => item.type !== 'hat' || item.type !== 'glases')
.map(item => item.id)
console.log(filterItems)
commit('setFilteredItems', filteredItems)
},
怎么了?
【问题讨论】:
-
似乎应该调用
getAllItems。试试getAllItems().filter... -
@SagiRika getter 是属性而不是方法
-
@BoussadjraBrahim 原因可能是吸气剂正在发生变化,而行动无法跟踪这种变化吗?还是过滤器本身有问题?
-
您是否尝试将它们分开?
-
是的,我想用过滤的对象数组更新状态。所以状态将只有过滤后的结果
标签: javascript vue.js vuejs2 vue-component vuex