来源树结构扁平化/**
* 把嵌套数组转成平铺数组
* @param data* @param childName子集节点的名称
* @return newData*/
const flatTree = (data, childName = 'children') => {
if (!Array.isArray(data)) {
console.warn('只支持传入数组')
return []
}
return data.reduce((prev, curt) => {
// 有子节点的话把子节点作为一级节点递归遍历
const childs = curt[childName]?.length ? flatTree(curt[childName]) : []
return [...prev, curt, ...childs]
}, [])
}
const generateArr = [
{
id: '001',
name: '节点1',
children: [
{
id: '0011',
name: '节点1-1',
...
继续阅读
(54)