predicate 条件的节点。findAllfindAll 方法在树中深度优先搜索,并返回所有满足 predicate 函数条件的节点组成的数组。
import { Tree } from '@movk/core'
const tree = [{ id: 1, type: 'folder', children: [{ id: 2, type: 'file' }, { id: 3, type: 'folder' }] }]
const folders = Tree.findAll(tree, ({ node }) => node.type === 'folder')
// folders => [{ id: 1, type: 'folder', ... }, { id: 3, type: 'folder' }]
findAll<T extends TreeNode>(tree: T[], predicate: (context: VisitorContext<T>) => boolean, config?: TreeConfig): T[]
true,该节点及其所有父节点将被保留在结果中。
该函数接收一个包含以下属性的 context 对象:id, pid, children 键名的配置对象。