element ui tree 如何只获取前三级节点

新手上路,请多包涵

data: [{

      id: 1,
      label: '一级 1',
      children: [{
        id: 4,
        label: '二级 1-1',
        children: [{
          id: 9,
          label: '三级 1-1-1',
            children: [{
              id: 11,
              label: '四级 1-1-1',
            }
        }, {
          id: 12,
          label: '三级 1-1-2'
        }]
      }]
    }, 
阅读 3.1k
2 个回答
/**
 * @description
 * @param {*} data 树结构数据
 * @param {number} [limit=3] 层级限制
 * @param {number} [count=1]
 * @return {*}  
 */
function handleTreeData(data, limit = 3, count = 1) {
    return data?.map((x) => ({
        ...x,
        children: count < limit ? handleTreeData(x.children, limit, count + 1) : [],
    }))
}
            data.forEach(item => {
                item.children.forEach(i => {
                    i.children.forEach((_item, index, arr) => {
                        arr[index].children = [];
                    });
                });
            });
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题