当前位置: 首页 > Web前端 > vue.js

在js中将普通json转成树形json

时间:2023-03-31 18:50:20 vue.js

使用递归方法:1.数据格式ARRvarARR=[{content:{id:10,parentId:-1,name:'red',code:'red'},children:[{content:{id:11,parentId:10,name:'红苹果',code:'red.apple'},children:[]},{content:{id:12,parentId:10,name:'红火龙果',code:'red.pitaya'},children:[]},{content:{id:13,parentId:10,name:'redcherry',code:'red.cherry'},children:[]}]},{内容:{id:20,parentId:-1,name:'green',code:'green'},children:[{content:{id:21,parentId:20,name:'青枣',code:'green.jujube'},children:[]},{content:{id:22,parentId:20,name:'greenlemon',code:'green.lemon'},children:[]}]},{内容:{id:30,parentId:-1,name:'yellow',code:'yellow'},children:[]}]2.数据格式2BRRvarBRR=[{id:10,parentId:-1,name:'红色',代码:'红色',孩子们:[{id:11,parentId:10,name:'红苹果',code:'red.apple',children:[]},{id:12,parentId:10,name:'红火龙果',code:'red.pitaya',children:[]},{id:13,parentId:10,name:'redcherry',code:'red.cherry',children:[]}]},{id:20,parentId:-1,name:'green',code:'green',children:[{id:21,parentId:20,name:'greenjujube',code:'green.jujube',children:[]},{id:22,parentId:20,name:'greenlemon',code:'green.lemon',children:[]}]},{id:30,parentId:-1,name:'yellow',code:'yellow',孩子们:[]}]3.目的:将ARR数据格式转换为BRR数据格式方法:{getMemberTable(){getPermission().then(res=>{letARR=res.data.contentvarCRR=[]this.fn(ARR,CRR)console.log('ARR:',ARR)console.log('CRR:',CRR)this.dataList=CRRconsole.log('dataList:',this.dataList)})},fn(data,newArr){//控制台。log('data1:',数据)//console.log('newArr1:',newArr)data.forEach((item,index)=>{newArr[index]=item.contentnewArr[index].children=item.childrenif(item.children==[])返回this.fn(item.children,newArr[index].children)})},}4.注意:如果有多个地方需要转换,可以全局注册fn

最新推荐
猜你喜欢