树结构的过滤分两种情况

  • 带父节点
  • 不带父节点

如:
原始树结构

带父节点

不带父节点

 filterTree(nodes, query) {// 条件就是节点的title过滤关键字let predicate = function (node) {if (node.compid.includes(query) || node.compname.includes(query)) {return true;} else {return false;}};// 结束递归的条件if (!(nodes && nodes.length)) {return [];}let newChildren = [];for (let node of nodes) {//一、带父节点     以下两个条件任何一个成立,当前节点都应该加入到新子节点集中// 1. 子孙节点中存在符合条件的,即 subs 数组中有值// 2. 自己本身符合条件// let subs = this.filterTree(node.children, query);// if (predicate(node)) {//   newChildren.push(node);// } else if (subs && subs.length) {//   node.children = subs;//   newChildren.push(node);// }//二、不带父节点     以下只需要考虑自身的节点满足条件即可,不用带上父节点if (predicate(node)) {newChildren.push(node);node.children = this.filterTree(node.children, query);} else {newChildren.push(...this.filterTree(node.children, query));}}return newChildren.length ? newChildren : [];}

js element-ui el-tree 树结构过滤 筛选相关推荐

  1. 关于vue.js element ui 表单验证 this.$refs[formName].validate()的问题

      方法使用前需了解: 来自"和"小编的小提示: 首先打印一下this.$refs[formName],检查是否拿到了正确的需要验证的form. 其次在拿到了正确的form后,检查 ...

  2. Node mysql mvc vue_net MVC +Vue.js+Element UI 笔记

    最近项目需求,要在MVC里用Vue 与 Element UI,故而做个笔记来记录一些遇到的问题和处理思路 (方式比较麻瓜,如果不是临时用的话,建议还是学一下Vue-cli,新项目还是老老实实前后端分离 ...

  3. Vue+JS+Element UI实战(电商项目1)

    目录 1.电商业务概述 2.电商后台管理系统的功能 ​3.项目初始化步骤 4.后台项目的环境安装配置 4.1. API V1 接口说明 4.2. 支持的请求方法 4.3. 通用返回状态说明 5.测试后 ...

  4. element ui封装 tree下拉框

    展示: 子组件封装 <!-- 树状选择器 科室树形 --> <template><el-popoverref="popover"placement=& ...

  5. vue中element ui 中tree组件怎么自定义前缀图标呢?

    一 问题 饿了么ui 默认的图标样式是: 1. 一个箭头, 展开自动顺时针旋转90°, 以上的条件是该节点有子节点, 2. 如果是没有子节点的节点, 是默认空白图标的(这里我认为他不是没有, 而是有占 ...

  6. DataGear 制作基于Vue2、Element UI前端框架的数据可视化看板

    DataGear 数据可视化看板内置了一些基本.简单的页面交互组件,当它们无法满足实际看板需求时,可以引入更流行和强大的前端框架. 本文以Vue2.Element UI前端框架为例,介绍如何制作具有更 ...

  7. elementui树状菜单tree_Vue+Element UI 树形控件整合下拉功能菜单(tree + dropdown +input)...

    这篇博客主要介绍树形控件的两个小小的功能: 下拉菜单 输入过滤框 以CSS样式为主,也会涉及到Vue组件和element组件的使用. 对于没有层级的数据,我们可以使用表格或卡片来展示.要展示或建立层级 ...

  8. Element ui tree树形控件获取当前节点id和父节点id

    低版本Element ui tree树形控件获取当前节点id和父节点id的方法:点击查看 最新版本Element ui tree树形控件获取当前节点id和父节点id教程: 1.找到node_modul ...

  9. Vue+Element UI 树形控件整合下拉功能菜单(tree + dropdown +input)

    这篇博客主要介绍树形控件的两个小小的功能: 下拉菜单 输入过滤框 以CSS样式为主,也会涉及到Vue组件和element组件的使用. 对于没有层级的数据,我们可以使用表格或卡片来展示.要展示或建立层级 ...

最新文章

  1. リストに項番をつける
  2. 处理之后的图像句柄传到显示框_深度学习目标检测与预处理模块
  3. 如何修改微软share point site 的页面风格
  4. PHP调试环境搭建的一些常见问题
  5. 【Redis】redis开机自启动、设置守护进程、密码设置、访问权限控制等安全设置(redis默认端口6379)...
  6. 解码Java.Lang.OutOfMemoryError:PermGen空间
  7. JVM类加载机制详解
  8. 绝了!RNN 还会写藏头诗!
  9. 1065. 单身狗(25)-PAT乙级真题
  10. 研究:三分之一英国人或因机器人“丢饭碗”
  11. 昆仑通态MCGS与三菱FX3U 485BD方式通讯案例 实现昆仑通态触摸屏与三菱FX3U的485BD板通过485方式进行连接
  12. MATLAB生成(对角线上元素相同的)三对角矩阵的实例
  13. u盘中病毒文件夹变成.exe解决
  14. 数据湖:数据同步工具NiFi
  15. ROS-Ardunio 点亮LED灯
  16. python nlp文本摘要实现_用TextRank算法实现自动文本摘要
  17. double和Double区别
  18. 经典:全国老婆一览表
  19. 什么情况下运放才能用虚短和虚断的概念1、在开环电路中,输入两端的电压差非常小,不会让运放饱和2、在闭环的深度反馈电路中。
  20. 汽车行业大数据共享jt808/gps的开放性

热门文章

  1. 工具类—MD5简单介绍以及MD5工具类
  2. 基于51单片机的数字电容容值测量仪proteus仿真原理图PCB
  3. 可以发布新闻稿的平台有哪些?
  4. Axure 9 - 中继器使用
  5. SAP BW介绍(zt)
  6. Win10+Word2016保存丢失解决方案
  7. Java和.net对比分析
  8. Jetpack Compose之手写分享页面
  9. 最新云海授权系统源码绿色版+UI非常好看
  10. 微信公众号之微信支付(V3版)jsp页面jsapi统一下单调启支付(java版)