后端返回的树形结构,前端需要将后端返回的格式修改成自己想要的格式

39 阅读1分钟

例如,后端返回的数据结构如下,如图一。需要改成图二形式

  const data = [{
   id:1,
   organize:"学生工作部",
   childrens:[{
           id:2,
           name:"生活宣传科"
       },
       {
           id:3,
           organize:"舞蹈部门",
           childrens:[{
                   id:4,
                   organize:"民族舞"     
               },
                {
                   id:5,
                   organize:"现代舞舞"     
               }]
       }]
  }]
const data = [{
       id:1,
       org:"学生工作部",
       arr:[{
               id:2,
               name:"生活宣传科"
           },
           {
               key:3,
               title:"舞蹈部门",
               children:[{
                       key:4,
                       title:"民族舞"     
                   },
                    {
                       key:5,
                       title:"现代舞舞"     
                   }]
           }]
     }]
     
递归遍历法
changeTreeTitle(arr){
  let newTree = []
  arr.forEach((item)=>{

    if(item.childrens && item.childrens.length){
      item.childrens = this.changeTreeTitle(item.childrens)
    }
    newTree.push({
      key: item.id,
      title: item.organize,
      children:item.childrens
    })
  })
  
  return newTree
  
}