【发布时间】:2019-07-27 01:50:28
【问题描述】:
这是我的 JSON 数据示例:
"data":[
{
"id":01,
"name":"test",
"parent_id":null,
"children":[
{
"id":15,
"name":"subChild",
"parent_id":21,
"children":[
{
"id":148,
"name":"subSubChild",
"parent_id":22,
"children":[
....
]
}
]
}
]
},
我想逐级过滤此级别。我做了这个方法:
computed: {
filteredData: function () {
let filterData = this.filter.toLowerCase()
return _.pickBy(this.data, (value, key) => {
return _.startsWith(value.name.toLowerCase(), filterData)
})
},
这项工作仅适用于第一个“级别”,我尝试了几种解决方案,但没有一个适用于儿童。
所以,我希望能够按多个级别进行过滤。
如果你有想法! 谢谢
【问题讨论】:
-
预期输出是什么?
filterData为name的对象? -
是的。有关更多详细信息: - 类别 1 - 子类别 1-1 - 类别 2 - 子类别 2-1 - 子类别 2-2 - 类别 3 ..... 如果我使用“子类别 2-2”的过滤器,我想仅查看“subCategory 2-2”和父“Category 2”。我希望我让自己明白!谢谢你
-
@Lolo 我下面的回答有意义吗?如果我遗漏了什么,请告诉我,以便我们解决。
-
@jom 当然!我在下面回答了你!再次感谢!!!
标签: vue.js filter nested lodash children