记录一下JS代码,元数据json_data中没有children属性,动态增加该属性
/**
* 获取xmSelect下拉菜单树 数据
* @param json_data
*/
getMenuTreeData: function (json_data) {
var _this = this;
var menuJsonData = [];// 菜单数组
var parentList = [];// 所有一级菜单数组
for (var i = 0; i < json_data.length; i++) {
var obj = {};
obj["children"] = [];//给每个菜单对象增加一个children属性
obj["id"] = json_data[i].id;
obj["parent"] = json_data[i].parent;
obj["text"] = json_data[i].text;
menuJsonData.push(obj);
if (json_data[i].parent == '#') {
parentList.push(obj);
}
}
for (var i = 0; i < parentList.length; i++) {
parentList[i] = _this.recuTree(parentList[i], menuJsonData);
}
// console.log(parentList);
_this.menuTreeData = parentList;
},
recuTree: function (parentMenu, menuJsonData) {
var _this = this;
for (var i = 0; i < menuJsonData.length; i++) {
if (parentMenu.id == menuJsonData[i].parent) {
menuJsonData[i] = _this.recuTree(menuJsonData[i], menuJsonData);
parentMenu["children"].push(menuJsonData[i]);
}
}
return parentMenu;
},