/**
* @param {Object} data 树形结构的源数据
* @param {Number} tier 需要的层级数
*/
function transformTreeData(data, tier) {
// const tree = _.cloneDeep(data); // 此处用到了lodash的深拷贝 或者自行实现深拷贝,防止改变原数组
const tree = JSON.parse(JSON.stringify(data))
transformTree(tree, tier);
function transformTree(tree, tier, curr = 0) {
curr++;
for (let index = 0, len = tree.length; index < len; index++) {
const item = tree[index];
if (curr === tier && item.children && item.children.length) {
item.children.length = 0;
}
if (item.children && item.children.length)
transformTree(item.children, tier, curr);
}
}
return tree;
}
树形结构层级转换
最新推荐文章于 2022-07-05 17:20:45 发布