1 回答
TA贡献1995条经验 获得超2个赞
function f(datas, keys) {
datas.forEach((item, i) => {
keys.push(i + 1)
item.key = keys.join('-')
if (item.items) {
f(item.items, keys)
}
keys.pop()
})
return datas
}
console.log(f([
{
name: 'name',
label: '人事管理',
items: [
{
name: 'name',
label: '员工管理',
items: [
{
name: 'name',
label: '员工管理-0',
items: [
{
name: 'name',
label: '员工管理-0-0',
items: '',
},
{
name: 'name',
label: '员工管理-0-1',
items: '',
},
],
},
{
name: 'name',
label: '员工管理-1',
items: '',
},
],
},
{
name: 'name',
label: '部门管理',
items: [
{
name: 'name',
label: '部门管理1',
items: '',
},
{
name: 'name',
label: '部门管理2',
items: '',
},
],
},
{
name: 'name',
label: '职位管理',
items: [
{
name: 'name',
label: '职位管理1',
items: '',
},
{
name: 'name',
label: '职位管理2',
items: '',
},
],
},
],
},
], []))
添加回答
举报