function createTree(list, parent = '0', parentKey='parentid') {
const tree = [];
list.map((item)=>{
if(item[parentKey] === parent ) {
item.children = createTree(list, item.id);
tree.push(item);
}
});
return tree;
}
function addHierarchy (list, pid= 'pid', children = 'children') {
if (!Array.isArray(arr)) return []
const recursion = (arr, index = 0) => {
index++
return arr.map(item => {
item[pid] = index
if (item[children] && item[children].length) recursion(item[children], index)
return item
})
}
return recursion(list)
}
function delNullChand(list, children='children') {
function recursion(arr) {
arr.forEach(item => {
if (!item[children].length) {
item[children]= null
} else {
recursion(item[children])
}
})
return arr
}
return recursion(list)
}