diff --git a/src/components/Toolbar.vue b/src/components/Toolbar.vue
index 7a4fc31..83d0bf3 100644
--- a/src/components/Toolbar.vue
+++ b/src/components/Toolbar.vue
@@ -8,6 +8,7 @@
{{ t('loadExample') }}
{{ t('updateLog') }}
{{ t('feedback') }}
+ 重置工作区
@@ -107,11 +108,13 @@ const refreshLogicFlowCanvas = (message?: string) => {
const logicFlowInstance = getLogicFlowInstance();
if (logicFlowInstance) {
// 获取当前活动文件的数据
- const currentFileData = filesStore.getTab(filesStore.activeFile);
+ const currentFileData = filesStore.getTab(filesStore.activeFileId);
if (currentFileData) {
// 清空画布并重新渲染
logicFlowInstance.clearData();
- logicFlowInstance.render(currentFileData);
+ // 注意:此处根据你的画布 API 传入 graphRawData 或整个文件数据
+ const data = (currentFileData as any).graphRawData || currentFileData;
+ logicFlowInstance.render(data);
console.log(message || 'LogicFlow 画布已重新渲染');
}
}
@@ -215,6 +218,18 @@ const handleImport = () => {
input.click();
};
+const handleResetWorkspace = () => {
+ ElMessageBox.confirm('确定重置当前工作区?该操作不可撤销', '提示', {
+ confirmButtonText: '重置',
+ cancelButtonText: '取消',
+ type: 'warning',
+ }).then(() => {
+ filesStore.resetWorkspace();
+ }).catch(() => {
+ // 用户取消
+ });
+};
+
const watermark = reactive({
text: localStorage.getItem('watermark.text') || '示例水印',
fontSize: Number(localStorage.getItem('watermark.fontSize')) || 30,
diff --git a/src/ts/useStore.ts b/src/ts/useStore.ts
index 4ccc2b1..4b0e3cb 100644
--- a/src/ts/useStore.ts
+++ b/src/ts/useStore.ts
@@ -278,7 +278,7 @@ export const useFilesStore = defineStore('files', () => {
}
// 关闭文件后立即更新
- updateTab();
+ // updateTab();
};
// 更新指定 Tab - 内存操作即时,localStorage 操作防抖