将树状结构的数据转成扁平数据
treeData: [{
id: 1,
label: 'Level one 1',
type: 1,
children: [{
id: 4,
label: 'Level two 1-1',
type: 2,
children: [{
id: 9,
label: 'Level three 1-1-1',
type: 3
}, {
id: 10,
label: 'Level three 1-1-2',
type: 3
}]
}, {
id: 11,
label: 'Level three 1-2',
type: 2,
children: [{
id: 12,
label: 'Level three 1-2-1',
type: 3
}, {
id: 13,
label: 'Level three 1-2-2',
type: 3
}, {
id: 14,
label: 'Level three 1-2-3',
type: 3
}, {
id: 15,
label: 'Level three 1-2-4',
type: 3
}]
}]
}]
treeToList(list) {
let res = []
for (const item of list) {
const { children, ...i } = item
if (children && children.length) {
res = res.concat(this.treeToList(children))
}
res.push(i)
}
return res
}
const treeList = this.treeToList(this.treeData)
console.log('树状结构转扁平结构', treeList)
|