From 7ce55aaf74023aef9584ab3e2e1210b93b2dd8d5 Mon Sep 17 00:00:00 2001 From: jianneng-fit2cloud Date: Tue, 8 Apr 2025 17:54:58 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E5=9B=BE=E8=A1=A8):=20=E6=94=BE=E5=A4=A7?= =?UTF-8?q?=E4=B8=8D=E6=94=AF=E6=8C=81=E6=8F=90=E7=A4=BA=E8=BD=AE=E6=92=AD?= =?UTF-8?q?=E7=9A=84=E5=9B=BE=E8=A1=A8=E5=90=8E=E5=81=9C=E6=AD=A2=E6=89=80?= =?UTF-8?q?=E6=9C=89=E8=BD=AE=E6=92=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/visualization/UserViewEnlarge.vue | 1 + .../components/js/g2plot_tooltip_carousel.ts | 15 ++++++++++----- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/core/core-frontend/src/components/visualization/UserViewEnlarge.vue b/core/core-frontend/src/components/visualization/UserViewEnlarge.vue index 7889169ddd..4589c54d75 100644 --- a/core/core-frontend/src/components/visualization/UserViewEnlarge.vue +++ b/core/core-frontend/src/components/visualization/UserViewEnlarge.vue @@ -325,6 +325,7 @@ const dialogInit = (canvasStyle, view, item, opt, params = { scale: 0.5 }) => { } nextTick(() => { initWatermark() + ChartCarouselTooltip.paused() }) } diff --git a/core/core-frontend/src/views/chart/components/js/g2plot_tooltip_carousel.ts b/core/core-frontend/src/views/chart/components/js/g2plot_tooltip_carousel.ts index b836bc4507..3f96c6b925 100644 --- a/core/core-frontend/src/views/chart/components/js/g2plot_tooltip_carousel.ts +++ b/core/core-frontend/src/views/chart/components/js/g2plot_tooltip_carousel.ts @@ -155,8 +155,9 @@ class ChartCarouselTooltip { setTimeout(() => { // 然后,恢复 CAROUSEL_MANAGER_INSTANCES?.forEach(instance => { - instance.chartIsVisible = true - instance.resume() + if (instance.chartIsVisible) { + instance.resume() + } }) }, 400) } @@ -165,11 +166,14 @@ class ChartCarouselTooltip { * 暂停轮播 * @param id */ - static paused(id: string) { + static paused(id?: string) { CAROUSEL_MANAGER_INSTANCES?.forEach(instance => { - if (instance.chart.id === id) { + if (id && instance.chart.id === id) { setTimeout(() => instance.paused(), 200) } + if (!id) { + instance.paused() + } }) } @@ -332,7 +336,7 @@ class ChartCarouselTooltip { const piePoint = view .scale() .getGeometries()[0] - .elements.find(item => item.data.field === value) + ?.elements.find(item => item.data.field === value) ?.getModel() if (!piePoint) { return { x: 0, y: 0 } @@ -365,6 +369,7 @@ class ChartCarouselTooltip { */ private getDualAxesTooltipPosition(view, value: string) { const xScale = view.getXScale() + if (!xScale) return { x: 0, y: 0 } const values = xScale.values if (values.length < 2) { const point = view