Skip to content

Commit 87553db

Browse files
committed
fix: 修复 treeFindPath 中 children 字段的引用,确保类型安全
1 parent 19e380c commit 87553db

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

packages/tree/src/treeFindPath.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,11 @@ interface Options {
3333
*/
3434
export function treeFindPath<TreeNode>(tree: TreeNode[] | TreeNode, predicate: (node: TreeNode) => boolean, options?: Options): TreeNode[] | null {
3535
const { fieldNames } = options || {}
36-
const { children } = { ...DEFAULT_FIELD_NAMES, ...fieldNames }
36+
const { children: childrenField } = { ...DEFAULT_FIELD_NAMES, ...fieldNames }
3737

3838
const path: TreeNode[] = []
3939
const queue = Array.isArray(tree) ? [...tree] : [tree]
40-
const visitedSet = new Set()
40+
const visitedSet = new Set<TreeNode>()
4141

4242
while (queue.length) {
4343
const node = queue[0]
@@ -48,7 +48,7 @@ export function treeFindPath<TreeNode>(tree: TreeNode[] | TreeNode, predicate: (
4848
else {
4949
visitedSet.add(node)
5050
// @ts-expect-error - dynamic field name
51-
node[children] && queue.unshift(...node[children])
51+
node[childrenField] && queue.unshift(...node[childrenField])
5252
path.push(node)
5353
if (predicate(node))
5454
return path

0 commit comments

Comments
 (0)