[{
name: "公司管理",
checked: true,
pId: 0,
id: 6
},
{
name: "数据管理",
checked: true,
pId: 6,
id: 7
},
{
name: "授权管理",
checked: true,
pId: 6,
id: 8
},
{
name: "员工管理",
checked: true,
pId: 7,
id: 10
},
{
name: "部门管理",
checked: true,
pId: 7,
id: 11
},
{
name: "菜单管理",
checked: true,
pId: 8,
id: 12
},
{
name: "角色管理",
checked: true,
pId: 8,
id: 13
}
]
上面这一段json可以得知其有sub和parent的概念,但是往往这样的json不符合我们的要求,我们希望转化一下
function formatJson(simpleJson){
var ret = [], o = {};
function add(arr, data){
var obj = {
"id": data.id,
"pId": data.pId,
"name":data.name,
"open":true,
"children": [],
"checked":data.checked
};
o[data.id] = obj;
arr.push(obj);
}
simpleJson.forEach(x => {
if(o[x.pId]){
add(o[x.pId].children,