From 6858f5bd3950e3b799873c037e861dd5379d213a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=87=91=E5=BB=BA?= <151812800@qq.com> Date: Mon, 24 Oct 2022 23:37:41 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=9D=E5=AD=98=E8=BF=9B=E7=A8=8B?= =?UTF-8?q?=E7=A7=BB=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../chart/ContentHeader/headerLeftBtn/index.vue | 3 ++- src/views/chart/hooks/useSync.hook.ts | 16 +++++++++------- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/src/views/chart/ContentHeader/headerLeftBtn/index.vue b/src/views/chart/ContentHeader/headerLeftBtn/index.vue index e29a59a0..69e448b1 100644 --- a/src/views/chart/ContentHeader/headerLeftBtn/index.vue +++ b/src/views/chart/ContentHeader/headerLeftBtn/index.vue @@ -66,7 +66,7 @@ import { ChartLayoutStoreEnum } from '@/store/modules/chartLayoutStore/chartLayo const { LayersIcon, BarChartIcon, PrismIcon, HomeIcon, ArrowBackIcon, ArrowForwardIcon } = icon.ionicons5 const { SaveIcon } = icon.carbon const { setItem } = useChartLayoutStore() -const { dataSyncUpdate } = useSync() +const { dataSyncUpdate, removeIntervalDataSync } = useSync() const { getLayers, getCharts, getDetails } = toRefs(useChartLayoutStore()) const chartEditStore = useChartEditStore() const chartHistoryStore = useChartHistoryStore() @@ -153,6 +153,7 @@ const goHomeHandle = () => { onPositiveCallback: () => { goHome() useRemoveKeyboard() + removeIntervalDataSync() } }) } diff --git a/src/views/chart/hooks/useSync.hook.ts b/src/views/chart/hooks/useSync.hook.ts index 25ef772f..f142d397 100644 --- a/src/views/chart/hooks/useSync.hook.ts +++ b/src/views/chart/hooks/useSync.hook.ts @@ -234,24 +234,26 @@ export const useSync = () => { chartEditStore.setEditCanvas(EditCanvasTypeEnum.SAVE_STATUS, SyncEnum.FAILURE) }, 3000) + let syncTiming:any // * 定时处理 const intervalDataSyncUpdate = () => { // 定时获取数据 - const syncTiming = setInterval(() => { + syncTiming = setInterval(() => { dataSyncUpdate() }, saveInterval * 1000) - - // 销毁 - onUnmounted(() => { - clearInterval(syncTiming) - }) } + // 卸载监听事件 + const removeIntervalDataSync = () => { + clearInterval(syncTiming) + } + return { updateComponent, updateStoreInfo, dataSyncFetch, dataSyncUpdate, - intervalDataSyncUpdate + intervalDataSyncUpdate, + removeIntervalDataSync } }