【发布时间】:2019-07-22 07:20:29
【问题描述】:
我有一个对象:
{
1: {
name: 'Adam',
age: 12,
},
2: {
name: 'Michal',
age: 14,
},
3: {
name: 'Jozef',
age: 12,
}
}
我尝试使用来自 lodash 的函数 filter:
this.knowledges = _.filter(this.knowledges, function (item) {
if (item.category[1] !== undefined) {
return arrayOfNumbers.indexOf(item.category[1].category_id) >= 0
}
})
变量arrayOfNumbers 返回数组:[1,3]
所以函数过滤器应该返回:
{
1: {
name: 'Adam',
age: 12,
},
3: {
name: 'Jozef',
age: 12,
}
}
但它只返回第一个索引:
{
1: {
name: 'Adam',
age: 12,
}
}
我该如何解决?
【问题讨论】:
-
您似乎正在用您的过滤器覆盖
this.knowledges,这可能是个坏主意。您的过滤器回调也可能不会返回值 -
那么
this.knowledges是什么样的?你的对象代表什么? -
嗨,
this.knowledges我的所有对象(首先来自我的查询)
标签: javascript vue.js lodash