@@ -11,9 +11,17 @@ import DevToolsHeader from '~/components/basic/DevToolsHeader.vue'
11
11
import Empty from ' ~/components/basic/Empty.vue'
12
12
import RootStateViewer from ' ~/components/state/RootStateViewer.vue'
13
13
import { createExpandedContext } from ' ~/composables/toggle-expanded'
14
+ import { getValidNodeId } from ' ~/utils'
14
15
import { useCustomInspectorState } from ' ~/composables/custom-inspector-state'
15
16
import ComponentTree from ' ~/components/tree/TreeViewer.vue'
16
17
18
+ const props = defineProps <{
19
+ savedSelectedId? : string
20
+ }>()
21
+ const emit = defineEmits <{
22
+ (e : ' onSelectId' , id : string ): void
23
+ }>()
24
+
17
25
const { expanded : expandedTreeNodes } = createExpandedContext ()
18
26
const { expanded : expandedStateNodes } = createExpandedContext (' custom-inspector-state' )
19
27
@@ -118,16 +126,17 @@ function clearInspectorState() {
118
126
watch (selected , () => {
119
127
clearInspectorState ()
120
128
getInspectorState (selected .value )
129
+ emit (' onSelectId' , selected .value )
121
130
})
122
131
123
132
const getInspectorTree = () => {
124
133
rpc .value .getInspectorTree ({ inspectorId: inspectorId .value , filter: ' ' }).then ((_data ) => {
125
134
const data = parse (_data ! )
126
135
tree .value = data
127
136
if (! selected .value && data .length ) {
128
- selected .value = data [0 ].id
137
+ selected .value = getValidNodeId ( tree . value , props . savedSelectedId ) || data [0 ].id
129
138
expandedTreeNodes .value = getNodesByDepth (treeNodeLinkedList .value , 1 )
130
- getInspectorState (data [ 0 ]. id )
139
+ getInspectorState (selected . value )
131
140
}
132
141
})
133
142
}
0 commit comments