From 8c5537c49e13e11d46b913545e0a27d7b8c48d50 Mon Sep 17 00:00:00 2001 From: haoxr <1490493387@qq.com> Date: Wed, 25 Jan 2023 18:53:14 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20ts+echarts+resize=E6=96=B9=E5=BC=8F?= =?UTF-8?q?=E7=AE=80=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Former-commit-id: 0a85c26f3c27843cd4e20b367e62d1f9b40370d9 --- src/utils/resize.ts | 73 ------ src/views/dashboard/components/BarChart.vue | 226 ++++++++---------- .../dashboard/components/FunnelChart.vue | 167 ++++++------- src/views/dashboard/components/PieChart.vue | 116 ++++----- src/views/dashboard/components/RadarChart.vue | 152 +++++------- src/views/dashboard/index.vue | 5 +- 6 files changed, 283 insertions(+), 456 deletions(-) delete mode 100644 src/utils/resize.ts diff --git a/src/utils/resize.ts b/src/utils/resize.ts deleted file mode 100644 index 343bb0f3..00000000 --- a/src/utils/resize.ts +++ /dev/null @@ -1,73 +0,0 @@ -import { ref } from 'vue'; -export default function () { - const chart = ref(); - const sidebarElm = ref(); - - const chartResizeHandler = () => { - if (chart.value) { - chart.value.resize(); - } - }; - - const sidebarResizeHandler = (e: TransitionEvent) => { - if (e.propertyName === 'width') { - chartResizeHandler(); - } - }; - - const initResizeEvent = () => { - window.addEventListener('resize', chartResizeHandler, {passive:true}); - }; - - const destroyResizeEvent = () => { - window.removeEventListener('resize', chartResizeHandler); - }; - - const initSidebarResizeEvent = () => { - sidebarElm.value = document.getElementsByClassName('sidebar-container')[0]; - if (sidebarElm.value) { - sidebarElm.value.addEventListener( - 'transitionend', - sidebarResizeHandler as EventListener, - {passive:true} - ); - } - }; - - const destroySidebarResizeEvent = () => { - if (sidebarElm.value) { - sidebarElm.value.removeEventListener( - 'transitionend', - sidebarResizeHandler as EventListener - ); - } - }; - - const mounted = () => { - initResizeEvent(); - initSidebarResizeEvent(); - }; - - const beforeDestroy = () => { - destroyResizeEvent(); - destroySidebarResizeEvent(); - }; - - const activated = () => { - initResizeEvent(); - initSidebarResizeEvent(); - }; - - const deactivated = () => { - destroyResizeEvent(); - destroySidebarResizeEvent(); - }; - - return { - chart, - mounted, - beforeDestroy, - activated, - deactivated - }; -} diff --git a/src/views/dashboard/components/BarChart.vue b/src/views/dashboard/components/BarChart.vue index 9d0ec5c9..860d5449 100644 --- a/src/views/dashboard/components/BarChart.vue +++ b/src/views/dashboard/components/BarChart.vue @@ -7,16 +7,7 @@ diff --git a/src/views/dashboard/components/FunnelChart.vue b/src/views/dashboard/components/FunnelChart.vue index 44206d21..3903d3a7 100644 --- a/src/views/dashboard/components/FunnelChart.vue +++ b/src/views/dashboard/components/FunnelChart.vue @@ -4,15 +4,7 @@ - - diff --git a/src/views/dashboard/components/PieChart.vue b/src/views/dashboard/components/PieChart.vue index ae708be5..0f71ba50 100644 --- a/src/views/dashboard/components/PieChart.vue +++ b/src/views/dashboard/components/PieChart.vue @@ -7,15 +7,7 @@ - - diff --git a/src/views/dashboard/components/RadarChart.vue b/src/views/dashboard/components/RadarChart.vue index 027f7027..f9350369 100644 --- a/src/views/dashboard/components/RadarChart.vue +++ b/src/views/dashboard/components/RadarChart.vue @@ -7,15 +7,7 @@ - - diff --git a/src/views/dashboard/index.vue b/src/views/dashboard/index.vue index 28d31782..6dbffd92 100644 --- a/src/views/dashboard/index.vue +++ b/src/views/dashboard/index.vue @@ -20,7 +20,7 @@ const date: Date = new Date(); const greetings = computed(() => { if (date.getHours() >= 6 && date.getHours() < 8) { return '晨起披衣出草堂,轩窗已自喜微凉🌅!'; - } else if (date.getHours() >= 8 && date.getHours() < 18) { + } else if (date.getHours() >= 8 && date.getHours() < 12) { return '上午好🌞!'; } else if (date.getHours() >= 12 && date.getHours() < 18) { return '下午好☕!'; @@ -209,5 +209,8 @@ const greetings = computed(() => { display: flex; justify-content: space-between; } + .svg-icon { + fill: currentColor !important; + } }