添加反向树加载功能,重构节点和树的选择逻辑

Co-authored-by: Copilot <copilot@github.com>
This commit is contained in:
2026-04-17 19:30:19 +08:00
parent 65d99bb7a8
commit 1de4f9db8d
15 changed files with 611 additions and 139 deletions

View File

@@ -58,14 +58,12 @@ export const useGraphCanvas = (readonly: boolean = false): UseGraphCanvas => {
if (graph.value) {
clearGraph();
// 等待 Vue 完成卸载
nextTick(() => {
graph.value?.dispose(); // 销毁 Graph 实例
graph.value = null;
if (container.value) {
container.value.innerHTML = ''; // 清空容器内容
}
});
// 同步销毁 Graph 实例,避免异步导致的竞态条件
graph.value.dispose();
graph.value = null;
if (container.value) {
container.value.innerHTML = ''; // 清空容器内容
}
} else if (container.value) {
container.value.innerHTML = '';
}
@@ -222,7 +220,8 @@ export const useGraphCanvas = (readonly: boolean = false): UseGraphCanvas => {
// 监听节点选中事件
graph.value.on('node:selected', ({ node }) => {
console.info('node select', node);
console.info('node select', node,node.getData());
emitGraphEvent('node:selected', node);
});