获取条件摇树结果
方法使用
js
import { getShakeBySearch } from "yiu-tree"
const tree = [
{ id: 1, children: [
{ id: '1-1', children: [
{ id: '1-1-1' }, { id: '1-1-2' }] },
{ id: '1-2' },
{ id: '1-3' } ],
},
{ id: 2, children: [
{ id: '2-1' }] },
{ id: 3 },
{ id: 4 },
]
const result = getShakeBySearch(tree, (node) => Array.isArray(node.children) && !!node.children.length)
console.log(`查询结果 :>> ${result}`)
方法说明
getShakeBySearch(tree, searchFunc, [opt])
方法默认开启深拷贝。
根据搜索方法进行摇树,将不符合搜索函数的节点摇掉。
NodeType
:T
getShakeBySearch<T>
: 泛型支持传入你定义的节点类型tree
:- 类型:
T[]
- 说明: 传入的树数据
- 类型:
searchFunc
:- 类型:
(node: T, [nodeInfo: TreeNodeInfo<T>]) => boolean
- 说明: 搜索函数
- 类型:
opt
:- 类型:
TreeBaseOpt<T>
- 说明: 树配置
- 类型: