(nodes: TreeNode[])
| 363 | // 保存当前展开状态 |
| 364 | const expandedPaths = new Set<string>(); |
| 365 | const collectExpandedPaths = (nodes: TreeNode[]) => { |
| 366 | for (const node of nodes) { |
| 367 | if (node.type === 'folder' && node.expanded) { |
| 368 | expandedPaths.add(node.path); |
| 369 | if (node.children) { |
| 370 | collectExpandedPaths(node.children); |
| 371 | } |
| 372 | } |
| 373 | } |
| 374 | }; |
| 375 | collectExpandedPaths(tree); |
| 376 | |
| 377 | // 重新加载根目录,获取最新的文件结构 |