js 遍历数据结构,使不符合条件的全部删除

js 遍历数据结构,使不符合条件的全部删除

  let newSource=JSON.parse(JSON.stringify(state.treeData))
  state.expandedKeys=[]
  checkedKeys.map((item:any)=>{
    loop(newSource,{jsonPath:item.split('&')[1]},state.expandedKeys)
  })
  function removeUnwantedNodes(tree) {
      // 检查当前节点是否满足条件
      if (!tree.newTag) { // 根据你的实际条件修改这里
          return null; // 不满足条件,则返回null,后续会过滤掉
      }
      // 如果有子节点,则递归处理子节点
      if (Array.isArray(tree.children)) {
          tree.children = tree.children.map(child => removeUnwantedNodes(child)).filter(Boolean);
      }
      // 返回经过处理后的当前节点
      return tree;
  }
  newSource = newSource.map(node => removeUnwantedNodes(node)).filter(Boolean);
  state.selectTreeData=newSource

样例如下
在这里插入图片描述

相关推荐

  1. react翻页

    2024-04-21 02:04:03       26 阅读
  2. [Go] 字符串类型问题

    2024-04-21 02:04:03       25 阅读
  3. js循环

    2024-04-21 02:04:03       55 阅读
  4. C# 删除DataTable里符合条件

    2024-04-21 02:04:03       22 阅读
  5. 2024-04-21 02:04:03       54 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-21 02:04:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-21 02:04:03       100 阅读
  3. 在Django里面运行非项目文件

    2024-04-21 02:04:03       82 阅读
  4. Python语言-面向对象

    2024-04-21 02:04:03       91 阅读

热门阅读

  1. linux xfrm框架详细介绍

    2024-04-21 02:04:03       40 阅读
  2. [CLS] 输出向量 和 [MASK] 向量

    2024-04-21 02:04:03       39 阅读
  3. TCP协议复习

    2024-04-21 02:04:03       38 阅读
  4. SpringBoot将上传的文件保存到临时文件

    2024-04-21 02:04:03       40 阅读
  5. C语言经典例题-19

    2024-04-21 02:04:03       35 阅读
  6. 视频怎么去水印,轻松去视频水印的方法

    2024-04-21 02:04:03       31 阅读
  7. 服务器为什么要定期备份

    2024-04-21 02:04:03       38 阅读
  8. Linux at练习之在系统中设定延迟任务

    2024-04-21 02:04:03       36 阅读
  9. 【Android】 镜像及分区

    2024-04-21 02:04:03       32 阅读
  10. python-pdf的合并与拆分

    2024-04-21 02:04:03       39 阅读
  11. Lambda表达式学习

    2024-04-21 02:04:03       28 阅读