树形结构递归处理函数

// 封装递归方法
export function tranListToTreeDate(list, currentId) {// 创建一个数组存放结果const res = []list.forEach(item => {if (item.pid === currentId) {// 递归部分const children = tranListToTreeDate(list, item.id)// 如果找到, 就放入当前 children 中// 否则停止if (children.length > 0) {item.children = children}res.push(item)}})return res
}

使用说明
list 为扁平数据数组
currentId 为父节点ID pid ===父节点ID 根据自己业务需求修改即可

属性数据扁平处理

/转结构(list就是你要转的树状数据)treeToList(list) {let res = []for (const item of list) {const { children, ...i } = itemif (children && children.length) {res = res.concat(this.treeToList(children))}res.push(i)}return res}
//查看数据是否转换成功const treeList = this.treeToList(this.treeData)console.log('树状结构转扁平结构', treeList)   

el-tree 扁平数据 树形结构递归处理相关推荐

  1. 扁平和树形结构的几种互转

    后端有时会返回如下扁平数组: [{id: '01',name: '衣服',pid: '0',},{id: '02',name: '裤子',pid: '0',},{id: '03',name: '鞋子' ...

  2. 树形结构递归_递归和匿名函数

    戳上面的蓝字关注我,有干货哦! ❝ 编程语言中,函数Func(Type a,--)直接或间接调用函数本身,则该函数称为递归函数. ❞ 模拟实现树形结构的遍历 比如:我要遍历下图sublime_pyth ...

  3. tree命令-以树形结构显示目录下的内容

    一.命令详解 1.1[功能说明] tree命令功能是以树形结构列出指定目录下的所有内容,包括所有文件.子目录及子目录里的目录和文件. 1.2 [语法格式] [root@7bfe451a2fe1:~]# ...

  4. 树形结构递归初始化(父节点,统计字段等)

    文章目录 1.核心思想: 2.核心方法实现: 3.完整代码如下 3.1. 树形实体 3.2. 完整操作 1.核心思想: 1.先将每个节点按层级进行分组成map,并记录最大层级: 2.层级自下而上的递归 ...

  5. Linux tree命令以树形结构显示文件目录结构

    我用的是阿里云服务器,CentOS7,默认没有tree这个命令,需要安装,用下面的命令就可以安装: sudo yum install tree 怎么样使用tree这个命令 其实有个非常简单的办法,就是 ...

  6. JavaScript中的扁平化数据转换为树形结构、树形结构扁平化数据

    1. 扁平化数据 ---- > 树形结构 1.1 第一种数据类型 原始数据只有id和pId相互关联 let data = [{ id: 639, name: "商品管理", ...

  7. Java学习笔记<十六>(树形结构存储)

    1.树形结构的介绍 * 树形结构简介  * 树形结构是一种非线性结构,存储的是"一对多的"关系的数据元素的集合  *  * 树形结构的相关术语:  * 节点(Node):使用树结构 ...

  8. 非线性数据结构之树形结构

      树形结构是一层次的嵌套结构. 一个树形结构的外层和内层有相似的结构, 所以这种结构多可以递归的表示.经典数据结构中的各种树状图是一种典型的树形结构:一颗树可以简单的表示为根, 左子树, 右子树. ...

  9. 关于el-tree树形结构的理解

    根据数据结构可划分为两种方式进行树形构建.特别地,还有一种节点可选形式. (1)数据data是一个由多个对象组成的数组,对象含有children属性(里面是多个对象组成的数组) 获取树形结构的数据da ...

最新文章

  1. PHP家庭账单系统,PHP+SQLite 多用户记账系统.家庭在线记账理财PHP管理系统.
  2. [翻译]在asp.net 2.0中使用WebParts
  3. 离线数据同步神器:DataX,支持几乎所有异构数据源的离线同步到MaxCompute
  4. POJ 1637 Sightseeing tour 混合图欧拉回路存在性判断
  5. 【转】阿里技术专家详解 DDD 系列 第一讲- Domain Primitive
  6. 关于我,十九线程序员小 UP
  7. 萌新的Python练习菜鸟100例(十六)输出指定格式的日期。
  8. NOIP 2013 货车运输
  9. 实用主义学python爬虫_麻瓜编程 实用主义学Python2018
  10. SqlServer执行计划
  11. python爬取自如房间信息(二)
  12. uhs3内存卡有哪些_存储卡的读写速度的区别:class 10,UHS-1(U1 U3),UHS-3
  13. 复杂网络中的小世界效应是什么东西?
  14. css中@media写法在ie 、firefox、Opera、Chrome、Safari 浏览器中的支持
  15. 楼宇能效控制器真的有用吗
  16. 学习人工智能可以从事哪些职业,有哪些就业前景和薪资待遇?
  17. 【小虫虫论坛】电脑城买笔记本奸商黑店骗术深度分析
  18. php自动登录QQ空间,QQ空间自动登录 - brivio的个人页面 - OSCHINA - 中文开源技术交流社区...
  19. DB2 常用执行语句及命令
  20. 后台开发与APP配合开发中的一些拙见

热门文章

  1. java计算机毕业设计vue图书档案管理系统源码+mysql数据库+系统+lw文档+部署
  2. 计算机毕业设计Java创新学分认证系统(源码+系统+mysql数据库+lw文档)
  3. 移动139邮箱被曝出漏洞
  4. 做头条自媒体运营的4点技巧
  5. 使用第三方APPKey授权 跳转登录 QQ
  6. SEED-XDS560v2 驱动
  7. 环与圈_扩大路径法证明
  8. 小米电视更换默认桌面和优化
  9. 如何配置无线路由为交换机模式
  10. 每天干的啥?(2018.03)