renameTreeKeys Tree
作用
按映射规则重写树节点属性名,支持专门重命名 children 字段。
签名
renameTreeKeys({ tree, mapping={}, childrenKey='children', childrenKeyOut })
引入
import { renameTreeKeys } from 'flit-kit'
参数
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
tree | Array<object> | [] | 输入树 |
mapping | Record<string,string> | {} | 普通属性名映射,如 { id:'code' } |
childrenKey | string | 'children' | 输入树的子节点字段名 |
childrenKeyOut | string | undefined | 输出树的子节点字段名,如 'childrenList' |
示例
const src = [
{ id: 1, name: 'A', children: [ { id: 2, name: 'A-1' } ] }
]
const out = renameTreeKeys({
tree: src,
mapping: { id: 'code', name: 'label' },
childrenKey: 'children',
childrenKeyOut: 'childrenList',
})
复杂度
- O(n·k)
返回值
Array<object>
输出
[
{
"code": 1,
"label": "A",
"childrenList": [
{ "code": 2, "label": "A-1" }
]
}
]