let ids = []
let data = [
{
title: '一级',
id: 1,
children: [
{
id: 3,
title: '二级',
children: [
{id: 7, title: '三级'},
{
id: 8,
title: '三级',
children: [
{id: 7, title: '四级'},
{id: 8, title: '四级'}
...
]
}
]
},
{
id: 4,
title: '二级',
children: [
{id: 9, title: '三级'},
{id: 10, title: '三级'}
]
}
]
},
{
title: '一级',
id: 2,
children: [
{
id: 5,
title: '二级',
children: [
{id: 11, title: '三级'},
{id: 12, title: '三级'}
]
},
{
id: 6,
title: '二级',
children: [
{id: 13, title: '三级'},
{id: 14, title: '三级'}
]
}
]
}
]
this.getAllId(ids, data.children)
// 递归 获取所有children的id
getAllId (keys, dataList) {
if (dataList && dataList.length) {
for (let i = 0; i < dataList.length; i++) {
keys.push(dataList[i].id)
if (dataList[i].children) {
keys = this.getAllId(keys, dataList[i].children)
}
}
}
return keys
},
vue 递归函数 筛选出所有子集id
最新推荐文章于 2024-07-08 15:38:00 发布