通过某个字段状态为true,来控制显示,返回a为true的对象组成的数组
根据树结构中某个字段的true/false关系,筛选出为true的树
let arr = [
{
a: true,
child: [
{
a: true,
b: 2
},
{
a: false,
b: 3
}
]
},
{
a: true,
child: [
{
a: true,
b: 2,
child: [
{
a: true,
b: 4
},
{
a: false,
b: 4
}
]
},
{
a: true,
b: 3
}
]
},
{
a: false,
child: [
{
a: false,
b: 2
},
{
a: false,
b: 3
}
]
}
]
//通过某个字段状态为true,来控制显示
//返回a为true的对象组成的数组
const filterMenu = menuList => {
return menuList.filter(item => {
return item.a == true;
}).map(item => {
item = Object.assign({}, item)
if(item.child && item.child.length > 0) {
item.child = filterMenu(item.child)
}
return item
})
}
// 调用
let menuList = filterMenu(arr);
console.log(menuList)

浙公网安备 33010602011771号