在 vuejs 上基于映射的计算 属性 进行计算 属性
Make a computed property based on a mapped computed property on vuejs
我需要使用映射状态的值来生成另一个计算 属性。
computed: {
...mapState({
items: (state) => state.items.items,
}),
isFood: this.items.find(
(item) => item.category == "Food"
) !== undefined
},
当我尝试 运行 时,我得到了 Cannot read property 'items' of undefined
的错误。
您正在尝试在 isFood
的 声明时间 调用 this.items.find
- 这还不存在。使其成为一个函数:
isFood() {
return this.items.some((item) => item.category === "Food");
},
我还更改了您的函数以使用 some()
,这样它在找到食物时就不会费心循环遍历项目数组的其余部分。
我需要使用映射状态的值来生成另一个计算 属性。
computed: {
...mapState({
items: (state) => state.items.items,
}),
isFood: this.items.find(
(item) => item.category == "Food"
) !== undefined
},
当我尝试 运行 时,我得到了 Cannot read property 'items' of undefined
的错误。
您正在尝试在 isFood
的 声明时间 调用 this.items.find
- 这还不存在。使其成为一个函数:
isFood() {
return this.items.some((item) => item.category === "Food");
},
我还更改了您的函数以使用 some()
,这样它在找到食物时就不会费心循环遍历项目数组的其余部分。