有谁知道的吗!求解!
let rewriteArr = [
{
id: 1,
label: '首页',
pagepermisson: 1,
children: [
{
id: 2,
label: '首页2',
}
]
},
{
id: 3,
label: '首页3',
pagepermisson: 1,
children: [
{
id: 4,
label: '首页4',
pagepermisson: 1,
},
{
id: 5,
label: '首页5',
}
]
}
]
function filterArr(data, arr = []) {
data.map(item => {
if(item.pagepermisson) {
arr.push({id: item.id, label: item.label, pagepermisson: item.pagepermisson})
}
if(item.children && item.children.length) {
filterArr(item.children, arr)
}
})
return arr;
}
console.log(filterArr(rewriteArr)) // [{"id":1,"label":"首页","pagepermisson":1},{"id":3,"label":"首页3","pagepermisson":1},{"id":4,"label":"首页4","pagepermisson":1}]
getList(){
const rewriteArr = [
{
id: 1,
label: '首页',
pagepermisson: 1,
children: [
{
id: 2,
label: '首页2',
}
]
},
{
id: 3,
label: '首页3',
pagepermisson: 1,
children: [
{
id: 4,
label: '首页4',
pagepermisson: 1,
},
{
id: 5,
label: '首页5',
}
]
}
]
const arr = rewriteArr.filter(item => item.pagepermisson)
arr.forEach(item=>{
if(item.children&item.children.length){
item.children = item.children.filter(f => f.pagepermisson)
}
})
return arr
}