diff --git a/src/stores/cytoscapeStore.ts b/src/stores/cytoscapeStore.ts index 470d54a..f04979a 100644 --- a/src/stores/cytoscapeStore.ts +++ b/src/stores/cytoscapeStore.ts @@ -64,7 +64,6 @@ export const useCytoscapeStore = defineStore('cytoscapeStore', { } else { this.nodePositions[this.currentGraphId][direction] .push({ id: nodeId, position: position }); - localStorage.setItem(SAVE_KEY_NAME, JSON.stringify(this.nodePositions)); } this.savePositionsToStorage(); }, @@ -73,6 +72,7 @@ export const useCytoscapeStore = defineStore('cytoscapeStore', { * @param {string} direction - Layout direction ('TB' or 'LR'). */ loadPositionsFromStorage(direction: string) { + if (!this.nodePositions[this.currentGraphId]) return; try { const raw = localStorage.getItem(SAVE_KEY_NAME); if (raw) { @@ -94,12 +94,9 @@ export const useCytoscapeStore = defineStore('cytoscapeStore', { }, setCurrentGraphId(currentGraphId: string) { this.currentGraphId = currentGraphId; - this.nodePositions = { - [this.currentGraphId]: { - 'TB': [], - 'LR': [], - } - }; + if (!this.nodePositions[currentGraphId]) { + this.nodePositions[currentGraphId] = { TB: [], LR: [] }; + } }, }, }); \ No newline at end of file