猿问

vue构建不定复杂JSON


目标是构建一个多层级的JSON

[
            {                name: "A_root",                id:1,                depth:0,                child: [
                    {                        name: "a1_1",                        depth:1,                        id:1
                    },
                    {                        name: "a1_2",                        depth:1,                        id:2
                    }
                ]
            },
            {                 name: "B_root" ,                 id:2,                 depth:0                     
            }
        ]

用一个函数在任意地方添加节点
比如可以在depth:0的这一级新增一个{name:'C_root',id:3,depth:0}
也可以在depth:0 id:2这里增添一个子节点构建成
{ name:'B_root',
id:2,
depth:0,
child:[{name:"b1_1",id:1,depth:1}] }
以此类推新增子节点,因为可能在任意位置新增节点所以希望能用一个函数解决


GCT1015
浏览 500回答 1
1回答

素胚勾勒不出你

可以用 lodash 的 set 方法, 如下所示:const set = require('lodash.set')let data = [   {    name: "A_root",    id: 1,    depth: 0,    child: [       {        name: "a1_1",        depth: 1,        id: 1       },       {        name: "a1_2",        depth: 1,        id: 2       }     ]   },   {     name: "B_root" ,     id: 2,     depth: 0   } ];          set(data, '[1].child[0]', { name: "b1_1", id: 1, depth: 1 });
随时随地看视频慕课网APP
我要回答