UNPKG

nsn-comp

Version:

NSN核心组件

41 lines (33 loc) 845 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.conventToTree = void 0; var _lodash = require("lodash"); /** * 将平面数据转换为树结构 */ var conventToTree = function conventToTree() { var records = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; if (records.length === 0) { return []; } var recordsMap = new Map(); records.forEach(function (ele) { return recordsMap.set(ele.id, (0, _lodash.cloneDeep)(ele)); }); var dataList = []; recordsMap.forEach(function (ele) { var pRes = recordsMap.get(ele['parentId']); if (pRes) { if (!pRes.children) { pRes.children = []; } pRes.children.push(ele); } else { dataList.push(ele); } }); return dataList; }; exports.conventToTree = conventToTree;