@pmun/utils / transformTree
Function: transformTree()
ts
function transformTree(
tree,
transformer,
childKey): any[];
递归转换树形结构的节点,支持重命名、新增、过滤属性。
Parameters
tree
any
[]
需要处理的树形数据(根节点数组)
transformer
(node
, children
) => any
转换函数,接收当前节点和子节点,返回处理后的节点
childKey
string
= 'children'
子节点的键名(默认为 'children'
)
Returns
any
[]
转换后的树形结构数组
Example
ts
// 重命名 `name` 为 `label`,并添加 `isLeaf` 属性
const transformedTree = transformTree(tree, (node, children) => ({
id: node.id,
label: node.name,
isLeaf: children.length === 0,
children,
}));