getNodePath Tree
作用
返回从根到目标节点的路径数组。
签名
getNodePath({ tree, findKey='id', findValue, childrenKey='children', predicate?, equals? })
引入
import { getNodePath } from 'flit-kit'
参数
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
tree | Array<object> | [] | 输入树 |
findKey | string | 'id' | 匹配字段名 |
findValue | any | undefined | 匹配值 |
childrenKey | string | 'children' | 子节点字段名 |
predicate | (node)=>boolean | undefined | 自定义断言;提供时优先 |
equals | (a,b)=>boolean | (a,b)=>a===b | 自定义相等判断 |
示例
const path = getNodePath({ tree, findKey: 'id', findValue: 3 })
复杂度
- O(n)
返回值
Array<object>
输出
[
{
"id": 1,
"parentId": null,
"name": "A",
"sort": 2,
"level": 1
},
{
"id": 3,
"parentId": 1,
"name": "A-2",
"sort": 2,
"level": 2
}
]