33 * @Author: hutu
44 * @Date: 2021-12-30 10:32:19
55 * @LastEditors: hutu
6- * @LastEditTime: 2022-01-10 16:48:23
6+ * @LastEditTime: 2022-01-11 08:50:29
77-->
88<template >
99 <div :id =" prop.id" :style =" { width: prop.width, height: prop.height }" ></div >
@@ -19,7 +19,6 @@ echarts.use([BarChart, LineChart, PieChart, TitleComponent, TooltipComponent, To
1919
2020import { ref , onMounted , onBeforeUnmount , onActivated , onDeactivated } from ' vue'
2121import { debounce } from ' throttle-debounce'
22- import elementResizeDetectorMaker from ' element-resize-detector'
2322
2423const prop = defineProps <{
2524 id: string
@@ -40,11 +39,11 @@ const initChart = () => {
4039/**
4140 * @desc : 监听窗口变化重置图表
4241 */
43- const chartResizeHandler = debounce (200 , false , () => {
42+ const chartResizeHandler = debounce (100 , false , () => {
4443 if (chart .value ) {
4544 chart .value .resize ({
4645 animation: {
47- duration: 300
46+ duration: 200
4847 }
4948 })
5049 }
@@ -61,25 +60,22 @@ const initResizeEvent = () => {
6160const destroyResizeEvent = () => {
6261 window .addEventListener (' resize' , chartResizeHandler )
6362}
63+
6464/**
6565 * @desc : 添加监听侧边栏变化事件
6666 */
6767let sidebarElm: HTMLElement
68- const erd = elementResizeDetectorMaker ()
6968const initSidebarResizeEvent = () => {
7069 sidebarElm = document .getElementsByClassName (' sidebar-container' )[0 ] as HTMLElement
71- if (sidebarElm ) {
72- erd .listenTo (sidebarElm , chartResizeHandler )
73- }
70+ sidebarElm && sidebarElm .addEventListener (' transitionend' , chartResizeHandler )
7471}
7572/**
7673 * @desc : 移除监听侧边栏变化事件
7774 */
7875const destroySidebarResizeEvent = () => {
79- if (sidebarElm ) {
80- erd .removeListener (sidebarElm , chartResizeHandler )
81- }
76+ sidebarElm && sidebarElm .removeEventListener (' transitionend' , chartResizeHandler )
8277}
78+
8379const mounted = () => {
8480 initChart ()
8581 initResizeEvent ()
@@ -88,9 +84,6 @@ const mounted = () => {
8884const beforeDestroy = () => {
8985 destroyResizeEvent ()
9086 destroySidebarResizeEvent ()
91- if (chart .value ) {
92- chart .value .dispose ()
93- }
9487}
9588
9689let firstFlag = false // 首次渲染
0 commit comments