From f68349894601aaaddfdc7468527a2d0320fc7a55 Mon Sep 17 00:00:00 2001 From: ihzero Date: Mon, 15 May 2023 11:01:50 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8E=A7=E5=88=B6=E5=B7=A6=E8=BE=B9=E8=87=AA?= =?UTF-8?q?=E5=8A=A8=E6=92=AD=E6=94=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/enums/cacheEnum.ts | 2 ++ src/store/modules/visualization.ts | 12 +++++++-- src/views/visualization/components/DXCY.vue | 12 ++++++++- src/views/visualization/components/DXJG.vue | 26 +++++++++++++++--- src/views/visualization/components/DXLX.vue | 12 ++++++++- src/views/visualization/components/DZWZ.vue | 12 ++++++++- src/views/visualization/components/Head.vue | 30 ++++++++++++++++++--- 7 files changed, 93 insertions(+), 13 deletions(-) diff --git a/src/enums/cacheEnum.ts b/src/enums/cacheEnum.ts index 12e82dd7..89485d95 100644 --- a/src/enums/cacheEnum.ts +++ b/src/enums/cacheEnum.ts @@ -27,6 +27,8 @@ export const LOCK_INFO_KEY = 'LOCK__INFO__KEY__' export const YEAR_KEY = 'YEAR_KEY__' +export const PLAY_KEY = 'PLAY_KEY__' + export const INIT_TIME = 'INIT_TIME_' export enum CacheTypeEnum { diff --git a/src/store/modules/visualization.ts b/src/store/modules/visualization.ts index 200e9b15..e1a4652b 100644 --- a/src/store/modules/visualization.ts +++ b/src/store/modules/visualization.ts @@ -1,17 +1,18 @@ import { defineStore } from 'pinia' -import { YEAR_KEY } from '/@/enums/cacheEnum' +import { YEAR_KEY, PLAY_KEY } from '/@/enums/cacheEnum' interface VisualizationState { year: number addressId?: number | null + play: boolean } - export const useVisualizationStore = defineStore({ id: 'app-visualization', state: (): VisualizationState => ({ year: Number(localStorage.getItem(YEAR_KEY)) || new Date().getFullYear() - 1, addressId: null, + play: localStorage.getItem(PLAY_KEY) === 'true' ? true : false, }), getters: { getYear(): number { @@ -20,6 +21,9 @@ export const useVisualizationStore = defineStore({ getAddresId(): number | null { return this?.addressId ?? null }, + getPlay(): boolean { + return this.play + }, }, actions: { setAddressId(id: number | null) { @@ -29,6 +33,10 @@ export const useVisualizationStore = defineStore({ this.year = year localStorage.setItem(YEAR_KEY, String(year)) }, + setPlay(play: boolean) { + this.play = play + localStorage.setItem(PLAY_KEY, String(play)) + }, plus() { this.setYear(this.year + 1) }, diff --git a/src/views/visualization/components/DXCY.vue b/src/views/visualization/components/DXCY.vue index 61f13864..6598e2f6 100644 --- a/src/views/visualization/components/DXCY.vue +++ b/src/views/visualization/components/DXCY.vue @@ -151,7 +151,9 @@ series: obj.series, }) - chartAmi() + if (visualizationStore.getPlay) { + chartAmi() + } } let timer: any = null @@ -233,6 +235,14 @@ () => getData(), ) + watch( + () => visualizationStore.getPlay, + () => { + timer && clearInterval(timer) + getData() + }, + ) + return { isChart, changeChart, diff --git a/src/views/visualization/components/DXJG.vue b/src/views/visualization/components/DXJG.vue index 9ecf22c8..2a358d22 100644 --- a/src/views/visualization/components/DXJG.vue +++ b/src/views/visualization/components/DXJG.vue @@ -7,12 +7,12 @@