@@ -11,9 +11,17 @@ import DevToolsHeader from '~/components/basic/DevToolsHeader.vue'
1111import Empty from ' ~/components/basic/Empty.vue'
1212import RootStateViewer from ' ~/components/state/RootStateViewer.vue'
1313import { createExpandedContext } from ' ~/composables/toggle-expanded'
14+ import { getValidNodeId } from ' ~/utils'
1415import { useCustomInspectorState } from ' ~/composables/custom-inspector-state'
1516import ComponentTree from ' ~/components/tree/TreeViewer.vue'
1617
18+ const props = defineProps <{
19+ savedSelectedId? : string
20+ }>()
21+ const emit = defineEmits <{
22+ (e : ' onSelectId' , id : string ): void
23+ }>()
24+
1725const { expanded : expandedTreeNodes } = createExpandedContext ()
1826const { expanded : expandedStateNodes } = createExpandedContext (' custom-inspector-state' )
1927
@@ -118,16 +126,17 @@ function clearInspectorState() {
118126watch (selected , () => {
119127 clearInspectorState ()
120128 getInspectorState (selected .value )
129+ emit (' onSelectId' , selected .value )
121130})
122131
123132const getInspectorTree = () => {
124133 rpc .value .getInspectorTree ({ inspectorId: inspectorId .value , filter: ' ' }).then ((_data ) => {
125134 const data = parse (_data ! )
126135 tree .value = data
127136 if (! selected .value && data .length ) {
128- selected .value = data [0 ].id
137+ selected .value = getValidNodeId ( tree . value , props . savedSelectedId ) || data [0 ].id
129138 expandedTreeNodes .value = getNodesByDepth (treeNodeLinkedList .value , 1 )
130- getInspectorState (data [ 0 ]. id )
139+ getInspectorState (selected . value )
131140 }
132141 })
133142}
0 commit comments