Function treeFind

  • 在树形结构中查找符合条件的节点。

    Type Parameters

    Parameters

    • nodes: T[]

      要搜索的节点数组。

    • predicate: ((node: T, parent?: T) => boolean)

      用于判断节点是否符合条件的函数。接收当前节点和父节点作为参数,返回布尔值。

        • (node, parent?): boolean
        • Parameters

          • node: T
          • Optionalparent: T

          Returns boolean

    • childKey: ChildKey = ...

      子节点的键名,默认为 'children'。

    Returns T | undefined

    符合条件的第一个节点,如果没有找到则返回 undefined。

    const nodes = [
    { id: 1, name: 'Node 1', children: [] },
    { id: 2, name: 'Node 2', children: [
    { id: 3, name: 'Node 2-1', children: [] }
    ]}
    ];

    const result = treeFind(nodes, (node) => node.id === 3);
    console.log(result); // 输出: { id: 3, name: 'Node 2-1', children: [] }