更改后端的数据格式适配el-tree组织树
.markdown-body h1, .markdown-body h2, .markdown-body h3, .markdown-body h4, .markdown-body h5, .markdown-body h6 { line-height: 1.5; margin-top: 35px; margin-bottom: 10px; padding-bottom: 5px }
.markdown-body h1 { font-size: 24px; line-height: 38px; margin-bottom: 5px }
.markdown-body h2 { font-size: 22px; line-height: 34px; padding-bottom: 12px; border-bottom: 1px solid rgba(236, 236, 236, 1) }
.markdown-body h3 { font-size: 20px; line-height: 28px }
.markdown-body h4 { font-size: 18px; line-height: 26px }
.markdown-body h5 { font-size: 17px; line-height: 24px }
.markdown-body h6 { font-size: 16px; line-height: 24px }
.markdown-body p { line-height: inherit; margin-top: 22px; margin-bottom: 22px }
.markdown-body img { max-width: 100% }
.markdown-body hr { border-top: 1px solid rgba(221, 221, 221, 1); border-right: none; border-bottom: none; border-left: none; margin-top: 32px; margin-bottom: 32px }
.markdown-body code { border-radius: 2px; overflow-x: auto; background-color: rgba(255, 245, 245, 1); color: rgba(255, 80, 44, 1); font-size: 0.87em; padding: 0.065em 0.4em }
.markdown-body code, .markdown-body pre { font-family: Menlo, Monaco, Consolas, Courier New, monospace }
.markdown-body pre { overflow: auto; position: relative; line-height: 1.75 }
.markdown-body pre>code { font-size: 12px; padding: 15px 12px; margin: 0; word-break: normal; display: block; overflow-x: auto; color: rgba(51, 51, 51, 1); background: rgba(248, 248, 248, 1) }
.markdown-body a { text-decoration: none; color: rgba(2, 105, 200, 1); border-bottom: 1px solid rgba(209, 233, 255, 1) }
.markdown-body a:active, .markdown-body a:hover { color: rgba(39, 91, 140, 1) }
.markdown-body table { display: inline-block !important; font-size: 12px; width: auto; max-width: 100%; overflow: auto; border: 1px solid rgba(246, 246, 246, 1) }
.markdown-body thead { background: rgba(246, 246, 246, 1); color: rgba(0, 0, 0, 1); text-align: left }
.markdown-body tr:nth-child(2n) { background-color: rgba(252, 252, 252, 1) }
.markdown-body td, .markdown-body th { padding: 12px 7px; line-height: 24px }
.markdown-body td { min-width: 120px }
.markdown-body blockquote { color: rgba(102, 102, 102, 1); padding: 1px 23px; margin: 22px 0; border-left: 4px solid rgba(203, 203, 203, 1); background-color: rgba(248, 248, 248, 1) }
.markdown-body blockquote:after { display: block; content: "" }
.markdown-body blockquote>p { margin: 10px 0 }
.markdown-body ol, .markdown-body ul { padding-left: 28px }
.markdown-body ol li, .markdown-body ul li { margin-bottom: 0; list-style: inherit }
.markdown-body ol li .task-list-item, .markdown-body ul li .task-list-item { list-style: none }
.markdown-body ol li .task-list-item ol, .markdown-body ol li .task-list-item ul, .markdown-body ul li .task-list-item ol, .markdown-body ul li .task-list-item ul { margin-top: 0 }
.markdown-body ol ol, .markdown-body ol ul, .markdown-body ul ol, .markdown-body ul ul { margin-top: 3px }
.markdown-body ol li { padding-left: 6px }
.markdown-body .contains-task-list { padding-left: 0 }
.markdown-body .task-list-item { list-style: none }
@media (max-width: 720px) { .markdown-body h1 { font-size: 24px } .markdown-body h2 { font-size: 20px } .markdown-body h3 { font-size: 18px } }.markdown-body pre, .markdown-body pre>code.hljs { color: rgba(51, 51, 51, 1); background: rgba(248, 248, 248, 1) }
.hljs-comment, .hljs-quote { color: rgba(153, 153, 136, 1); font-style: italic }
.hljs-keyword, .hljs-selector-tag, .hljs-subst { color: rgba(51, 51, 51, 1); font-weight: 700 }
.hljs-literal, .hljs-number, .hljs-tag .hljs-attr, .hljs-template-variable, .hljs-variable { color: rgba(0, 128, 128, 1) }
.hljs-doctag, .hljs-string { color: rgba(221, 17, 68, 1) }
.hljs-section, .hljs-selector-id, .hljs-title { color: rgba(153, 0, 0, 1); font-weight: 700 }
.hljs-subst { font-weight: 400 }
.hljs-class .hljs-title, .hljs-type { color: rgba(68, 85, 136, 1); font-weight: 700 }
.hljs-attribute, .hljs-name, .hljs-tag { color: rgba(0, 0, 128, 1); font-weight: 400 }
.hljs-link, .hljs-regexp { color: rgba(0, 153, 38, 1) }
.hljs-bullet, .hljs-symbol { color: rgba(153, 0, 115, 1) }
.hljs-built_in, .hljs-builtin-name { color: rgba(0, 134, 179, 1) }
.hljs-meta { color: rgba(153, 153, 153, 1); font-weight: 700 }
.hljs-deletion { background: rgba(255, 221, 221, 1) }
.hljs-addition { background: rgba(221, 255, 221, 1) }
.hljs-emphasis { font-style: italic }
.hljs-strong { font-weight: 700 }
[ { "componentCount": 5, "categories": [ { "componentCount": 5, "elements": [ { "newName": "Generic - 200mm", "oldComponentKey": "M1697679454017_144344", "oldName": "Generic - 200mm", "newComponentKey": "M1697680099315_144344", "type": "attribute" }, { "newName": "Interior - 138mm Partition (1-hr)", "oldComponentKey": "M1697679454017_143858", "oldName": "Interior - 138mm Partition (1-hr)", "newComponentKey": "M1697680099315_143858", "type": "geometry" }, { "newName": "Generic - 200mm", "oldComponentKey": "M1697679454017_154279", "oldName": "Generic - 200mm", "newComponentKey": "M1697680099315_154279", "type": "both" }, { "newName": "Generic - 200mm", "oldComponentKey": "M1697679454017_150861", "oldName": "Generic - 200mm", "newComponentKey": "M1697680099315_150861", "type": "attribute" }, { "newName": "Generic - 200mm", "oldComponentKey": "M1697679454017_151331", "oldName": "Generic - 200mm", "newComponentKey": "M1697680099315_151331", "type": "attribute" } ],
"categoryName": "墙"
}
]
}
]
这个是我们将数据展示成这样
这是我们的数据结构
[{ "id": 0, "label": "全部", "children": [{ "label": "屋顶", "componentCount": 1, "componentKey": "", "id": 1, "children": [{ "label": "对比组", "id": 1, "children": [{ "label": "新Concrete Deck - Tapered Insulation", "id": "M1598257565598_1400561", "componentKey": "新M1598257565598_140056", "type": "new" }, { "label": "旧Concrete Deck - Tapered Insulation", "id": "M1608039229034_1400561", "componentKey": "新M1608039229034_140056", "type": "old" }]
}]
}, {
"label": "模型组",
"componentCount": 2,
"componentKey": "",
"id": 2,
"children": [{
"label": "对比组",
"id": 2,
"children": [{
"label": "新Array Group 1",
"id": "M1598257565598_1328311",
"componentKey": "新M1598257565598_132831",
"type": "new"
}, {
"label": "旧Array Group 1",
"id": "M1608039229034_1328311",
"componentKey": "新M1608039229034_132831",
"type": "old"
}]
},
{
"label": "对比组2",
"id": 3,
"children": [{
"label": "新Array Group 1",
"id": "M1598257565598_1328311",
"componentKey": "新M1598257565598_132831",
"type": "new"
}, {
"label": "旧Array Group 1",
"id": "M1608039229034_1328311",
"componentKey": "新M1608039229034_132831",
"type": "old"
}]
}
]
}]
}]
componentList.changDataList = [{
id: 0,
label: "全部",
children: [...changeDataChenged(res.data.data.changed.categories)]
}]
const changeDataChenged = (data: any) => {
return data.map((item: any, index: number) => {
return {
label: item.categoryName ,
componentCount: item.componentCount ? item.componentCount : 1,
componentKey: item.componentKey ? item.componentKey : '',
id: item.componentKey ? item.componentKey : index + 1,
children: item.elements.length>0 ? item.elements.map((el:any,ind:any)=>{
return {
label: '对比组'+(ind+1),
id: item.componentKey ? item.componentKey : index + 1,
children: [
{
label: '新' +el.newName,
id: el.newComponentKey + 1,
componentKey: '新' + el.newComponentKey,
type: "new"
},
{
label: '旧' + el.oldName,
id: el.oldComponentKey + 1,
componentKey: '旧' + el.oldComponentKey,
type: "old"
}
]
}
}) : []
}
})
}
更改后端的数据格式适配el-tree组织树的更多相关文章
- 组织树查询-Jvava实现(递归)
1.首先查询出组织机构 就是一个简单的查询 List<Dept> deptList = mapper.getDeptList(); Map<Long, OrgNode> nod ...
- Mysql B-Tree, B+Tree, B*树介绍
[摘要] 最近在看Mysql的存储引擎中索引的优化,神马是索引,支持啥索引.全是浮云,目前Mysql的MyISAM和InnoDB都支持B-Tree索引,InnoDB还支持B+Tree索引,Memory ...
- 【数据结构】B-Tree, B+Tree, B*树介绍
[摘要] 最近在看Mysql的存储引擎中索引的优化,神马是索引,支持啥索引.全是浮云,目前Mysql的MyISAM和InnoDB都支持B-Tree索引,InnoDB还支持B+Tree索引,Memory ...
- 【数据结构】B-Tree, B+Tree, B*树介绍 转
[数据结构]B-Tree, B+Tree, B*树介绍 [摘要] 最近在看Mysql的存储引擎中索引的优化,神马是索引,支持啥索引.全是浮云,目前Mysql的MyISAM和InnoDB都支持B-Tre ...
- B-Tree, B+Tree, B*树介绍
[数据结构]B-Tree, B+Tree, B*树介绍 转 [数据结构]B-Tree, B+Tree, B*树介绍 [摘要] 最近在看Mysql的存储引擎中索引的优化,神马是索引,支持啥索引.全是 ...
- Mysql存储引擎之TokuDB以及它的数据结构Fractal tree(分形树)
在目前的Mysql数据库中,使用最广泛的是innodb存储引擎.innodb确实是个很不错的存储引擎,就连高性能Mysql里都说了,如果不是有什么很特别的要求,innodb就是最好的选择.当然,这偏文 ...
- 页面设计--Tree目录树
Tree目录树控件属性: 根据数据集合来配置相应的信息 加载模式有自动加载.自定加载 web中显示效果图:
- [转] Splay Tree(伸展树)
好久没写过了,比赛的时候就调了一个小时,差点悲剧,重新复习一下,觉得这个写的很不错.转自:here Splay Tree(伸展树) 二叉查找树(Binary Search Tree)能够支持多种动态集 ...
- CJOJ 1976 二叉苹果树 / URAL 1018 Binary Apple Tree(树型动态规划)
CJOJ 1976 二叉苹果树 / URAL 1018 Binary Apple Tree(树型动态规划) Description 有一棵苹果树,如果树枝有分叉,一定是分2叉(就是说没有只有1个儿子的 ...
- FineReport中如何制作树数据集来实现组织树报表
1. 问题描述 FineReport,组织树报表中由id与父id来实现组织树报表,若层级数较多时,对每个单元格设置过滤条件和形态会比较繁琐,因此FineReport提供了一种特殊的数据集——树数据集, ...
随机推荐
- 【FastDFS】环境搭建 02 测试
自带工具测试: 编辑客户端配置文件: vim client.conf 配置完成后,随便上传一个图片到root目录下 运行FastFDS文件上传程序,并将客户端配置文件作为加载参数1,要上传的图片文件位 ...
- 强化学习中性能的评价指标到底应该如何选择:1.平均得分,2.平均Q值
<Human-level control through deep reinforcement learning> 是深度强化学习的开创性论文,对于强化学习算法的性能评价在文章中给出了两种 ...
- windows系统下安装最新版gym的安装方法(此时最新版的gym为0.24.0,gym==0.24.0)
当前gym的最新版本为0.24.0,本篇介绍对gym[atari]==0.24.0进行安装. 使用pip安装: pip install gym[atari] 可以看到此时安装的是ale_py而不是at ...
- js map方法处理返回数据,获取指定数据简写方法
map方法处理返回数据,获取指定数据简写方法 前言 后端返回数据为数组列表时,通常比较全面,包含了很多不需要的数据,可以通过 map 方法处理返回数据,筛选出想要的数据 例如 // 返回数据 res ...
- 9组-Beta冲刺-5/5
一.基本情况(15分) 队名:不行就摆了吧 组长博客:9组-Beta冲刺-5/5 GitHub链接:https://github.com/miaohengming/studynote/tree/mai ...
- leetcode第 109 场双周赛
6930. 检查数组是否是好的 - 力扣(LeetCode) 首先判断数组长度是不是最大值 + 1, 然后排个序,判断0到n - 2是不是都是1到最大值的一个排列,满足这些返回true就行了 clas ...
- zabbix 自定义用户key与参数userparameters监控监本输出
zabbix在模板中预定义了一些key,但通常情况,并不能满足我们的需求.幸运的是zabbix提供了自定义key的方法,因此我们可以灵活的监控各种我们想要监控的数据. 定义key有两种修改方式: vi ...
- Excel 导入的开发经验
2020 年开始接触 Java Excel 导入的开发工作. 一家建筑机器人的公司离职后,来到广州找的是一家工厂,开始接触导入的开发工作.之前也没有什么使用开发经验, 是 教学视频 中看到过有些老 ...
- 基于Material Design风格开源的Avalonia UI控件库
前言 今天大姚给大家分享一款基于Material Design风格开源.免费(MIT License)的Avalonia UI控件库:Material.Avalonia. 当前项目还处于alpha阶段 ...
- CANopen学习笔记(一)CANopen入门
CANOpen入门 定位:小网络,控制信号的实时通讯 确保实时性采取的措施 ID域:11bit(CAN标准帧格式) 控制报文采用数据最小字节数 采用生产消费模型(数据无需应答) 需要应答时,采用快 ...