// 平级json 转换为树状结构 list:菜单数组, id:节点id, parentid:父id, children:子数组
transDate(list,idstr,pidstr,children){
var result = [],temp = {};
for(var i = 0; i < list.length; i++){
temp[list[i][idstr]]=list[i];//将nodes数组转成对象类型
}
for(var j=0; j<list.length; j++){
var tempVp = temp[list[j][pidstr]]; //获取每一个子对象的父对象
if(tempVp){//判断父对象是否存在,如果不存在直接将对象放到第一层
if(!tempVp[children]) tempVp[children] = [];//如果父元素的nodes对象不存在,则创建数组
tempVp[children].push(list[j]);//将本对象压入父对象的nodes数组
}else{
result.push(list[j]);//将不存在父对象的对象直接放入一级目录
}
}
return result;
}
// 查找没有子节点的节点
findIndex(tree,targetID,select) {
if(tree){
if(tree.id==targetID){
if(!tree.children) {
select.push({id:targetID});
}
}
else if(tree.children){
for(var i=0;i<tree.children.length;i++){
this.findIndex(tree.children[i],targetID,select);
}
}
}
}
// json key 转大写
upperKey(jsonObj) {
for (var key in jsonObj) {
jsonObj[key.toUpperCase()] = jsonObj[key];
delete(jsonObj[key]);
}
return jsonObj;
},
// json key 转小写
lowerKey(jsonObj) {
for (var key in jsonObj) {
jsonObj[key.toLowerCase()] = jsonObj[key];
delete(jsonObj[key]);
}
return jsonObj;
},
elementU tree组件常用到的JSON数据处理方法
最新推荐文章于 2022-01-21 17:51:25 发布