一天& 2023-02-27 19:09 采纳率: 20%
浏览 33
已结题

关于#树形结构#的问题,如何解决?

递归处理树形结构


```javascript
data: [{
          label: '一级 1',
          TypeID: "1",
            Children:{
              ModelTreeItem:[{
                label: '二级 1-1',
                TypeID: "2",
                Children:{
                  ModelTreeItem:[{
                    label: '二级 1-2',
                    TypeID: "3",
                  }]
                } 
              }]
            } 
        }, {
          label: '一级 2',
          TypeID: "4",
          Children:{
            ModelTreeItem:[{
              label: '二级 2-1',
              TypeID: "5",
            }, {
              label: '二级 2-2',
              TypeID: "6",
            }]
          }
        }, {
          label: '一级 3',
          TypeID: "7",
          Children:{
            ModelTreeItem:[{
              label: '二级 2-1',
              TypeID: "8",
            }, {
              label: '二级 2-2',
              TypeID: "9",
            }]
          }
        }],


  • 写回答

2条回答 默认 最新

  • 渣男 2023-02-27 23:24
    关注

    递归处理一下就好了

    alt

    
    const arr = [
      {
        label: '一级 1',
        TypeID: '1',
        Children: {
          ModelTreeItem: [
            {
              label: '二级 1-1',
              TypeID: '2',
              Children: {
                ModelTreeItem: [
                  {
                    label: '二级 1-2',
                    TypeID: '3'
                  }
                ]
              }
            }
          ]
        }
      },
      {
        label: '一级 2',
        TypeID: '4',
        Children: {
          ModelTreeItem: [
            {
              label: '二级 2-1',
              TypeID: '5'
            },
            {
              label: '二级 2-2',
              TypeID: '6'
            }
          ]
        }
      },
      {
        label: '一级 3',
        TypeID: '7',
        Children: {
          ModelTreeItem: [
            {
              label: '二级 2-1',
              TypeID: '8'
            },
            {
              label: '二级 2-2',
              TypeID: '9'
            }
          ]
        }
      }
    ]
    const formatTree = (data) => {
      data.forEach((item) => {
        if (item.Children) {
          item.children = item.Children.ModelTreeItem
          delete item.Children
          formatTree(item.children)
        }
      })
    }
    formatTree(arr)
    console.log(arr);
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 3月7日
  • 已采纳回答 2月27日
  • 创建了问题 2月27日

悬赏问题

  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分