From 0f09a723a24c645edb9f502b69a3003583bc1171 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BE=9D=E7=91=AA=E8=B2=93?= Date: Mon, 9 Mar 2026 17:51:41 +0800 Subject: [PATCH] Clean up emitter listeners and destroy Cytoscape instance on unmount Co-Authored-By: Claude Opus 4.6 --- src/views/Compare/MapCompare.vue | 3 +++ src/views/Discover/Map/MapPage.vue | 3 +++ 2 files changed, 6 insertions(+) diff --git a/src/views/Compare/MapCompare.vue b/src/views/Compare/MapCompare.vue index 4fe4969..9648f59 100644 --- a/src/views/Compare/MapCompare.vue +++ b/src/views/Compare/MapCompare.vue @@ -639,6 +639,9 @@ function setActivityBgImage(mapData) { })(); onBeforeUnmount(() => { + emitter.off("saveModal"); + emitter.off("leaveFilter"); + cytoscapeGraph.value?.destroy(); logId.value = null; createFilterId.value = null; temporaryData.value = []; diff --git a/src/views/Discover/Map/MapPage.vue b/src/views/Discover/Map/MapPage.vue index a15a528..e60c071 100644 --- a/src/views/Discover/Map/MapPage.vue +++ b/src/views/Discover/Map/MapPage.vue @@ -627,6 +627,9 @@ function setActivityBgImage(mapData) { })(); onBeforeUnmount(() => { + emitter.off("saveModal"); + emitter.off("leaveFilter"); + cytoscapeGraph.value?.destroy(); logId.value = null; createFilterId.value = null; temporaryData.value = [];