• 将嵌套子列表转换为平铺列表(列表处理)

    Type Parameters

    • T

    Parameters

    • list: T[]

      要处理的节点列表

    • children: ((item: T) => T[])

      获取子节点列表的函数,接收当前节点并返回其子节点数组

        • (item): T[]
        • Parameters

          • item: T

          Returns T[]

    • Optionalfilter: ((item: T) => boolean)

      可选过滤器函数,返回true表示包含该节点

        • (item): boolean
        • Parameters

          • item: T

          Returns boolean

    Returns T[]

    平铺后的节点数组

    const treeList = [
    {
    id: 1,
    children: [
    { id: 2, children: [] },
    { id: 3, children: [{ id: 4, children: [] }] }
    ]
    },
    { id: 5, children: [] }
    ];
    const flatList = listFlats(treeList, node => node.children);
    // 返回: [{id:1}, {id:2}, {id:3}, {id:4}, {id:5}]

    // 带过滤器的示例
    const filteredList = listFlats(treeList, node => node.children, node => node.id > 2);
    // 返回: [{id:3}, {id:4}, {id:5}]