flit-kit
指南
API
NPM
指南
API
NPM
  • 总览
  • Tree

    • buildTree
    • traverseTree
    • findNode
    • getNodePath
    • normalizeChildren
    • pruneTreeDepth
    • getDescendants
    • getTreeDepth
    • flattenTree
    • renameTreeKeys
  • Number

    • animation

getNodePath Tree

作用

返回从根到目标节点的路径数组。

签名

getNodePath({ tree, findKey='id', findValue, childrenKey='children', predicate?, equals? })

引入

import { getNodePath } from 'flit-kit'

参数

参数类型默认值说明
treeArray<object>[]输入树
findKeystring'id'匹配字段名
findValueanyundefined匹配值
childrenKeystring'children'子节点字段名
predicate(node)=>booleanundefined自定义断言;提供时优先
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
  }
]
Prev
findNode
Next
normalizeChildren