1
- import { NodeKey , TreeNodeOptions } from "./types" ;
1
+ import { NodeKey , TreeNodeOptions , TypeWithNull } from "./types" ;
2
2
import { ref } from "vue" ;
3
3
import { SelectionModel } from "../selections" ;
4
4
@@ -23,20 +23,19 @@ class TreeService {
23
23
defaultCheckedKeys : NodeKey [ ] ,
24
24
defaultExpandedKeys : NodeKey [ ] ,
25
25
defaultDisabledKeys : NodeKey [ ] ,
26
- parent : Required < TreeNodeOptions > | null = null
26
+ parent : TypeWithNull < Required < TreeNodeOptions > > = null
27
27
) : Required < TreeNodeOptions > [ ] {
28
28
29
29
this . defaultSelectedKey = defaultSelectedKey ;
30
30
this . defaultCheckedKeys = defaultCheckedKeys ;
31
31
this . defaultExpandedKeys = defaultExpandedKeys ;
32
32
this . defaultDisabledKeys = defaultDisabledKeys ;
33
- console . log ( 'defaultCheckedKeys 22 :>> ' , defaultCheckedKeys ) ;
34
33
const result : Required < TreeNodeOptions > [ ] = [ ] ;
35
- const recursion = ( list : TreeNodeOptions [ ] , level = 0 , parent : Required < TreeNodeOptions > | null = null ) => {
34
+ const recursion = ( list : TreeNodeOptions [ ] , parent : TypeWithNull < Required < TreeNodeOptions > > = null ) => {
36
35
return list . map ( item => {
37
36
const flatNode : Required < TreeNodeOptions > = {
38
37
...item ,
39
- level : item . level || level + 1 ,
38
+ level : parent ? parent . level + 1 : item . level || 0 ,
40
39
loading : false ,
41
40
hasChildren : item . hasChildren || false ,
42
41
parentKey : parent ?. nodeKey || null ,
@@ -64,7 +63,7 @@ class TreeService {
64
63
this . selectedNodes . value . select ( flatNode ) ;
65
64
}
66
65
if ( item . children ?. length ) {
67
- flatNode . children = recursion ( item . children , level + 1 , flatNode ) ;
66
+ flatNode . children = recursion ( item . children , flatNode ) ;
68
67
}
69
68
}
70
69
@@ -75,7 +74,7 @@ class TreeService {
75
74
} ) ;
76
75
}
77
76
78
- recursion ( source , parent ?. level ) ;
77
+ recursion ( source , parent ) ;
79
78
return result ;
80
79
}
81
80
0 commit comments