From d387848d15a40fb16c8a6eefb007d5f7411c5dbc Mon Sep 17 00:00:00 2001 From: ZhangXianQiang <1135831638@qq.com> Date: 星期日, 28 四月 2024 13:32:27 +0800 Subject: [PATCH] fix:修改图片浏览组件 --- src/views/home/data-chart/index.vue | 62 ++++++++++++++++++++++++++---- 1 files changed, 53 insertions(+), 9 deletions(-) diff --git a/src/views/home/data-chart/index.vue b/src/views/home/data-chart/index.vue index 0681229..0f0d2b4 100644 --- a/src/views/home/data-chart/index.vue +++ b/src/views/home/data-chart/index.vue @@ -5,7 +5,7 @@ <div class="title-container"> <h1>杩愮淮鐩戞帶鎶ヨ〃</h1> <div class="select-container"> - <el-select v-model="company" placeholder="璇烽�夋嫨杩愮淮鍏徃"> + <el-select v-model="company" placeholder="璇烽�夋嫨杩愮淮鍏徃" @change="companyChange"> <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> @@ -27,6 +27,7 @@ <script> import * as echarts from 'echarts'; let lineChart = null; +let observer = null; export default { name: 'DataChart', data() { @@ -45,6 +46,26 @@ state: { '1鏈�': 1000, '2鏈�': 2131, '3鏈�': 1233, '4鏈�': 2132, '5鏈�': 3211 }, state2: { '1鏈�': 123, '2鏈�': 213, '3鏈�': 1412, '4鏈�': 23, '5鏈�': 123 } }, + { + name: 'XX杩愮淮鍏徃2', + state: { '1鏈�': 213, '2鏈�': 2131, '3鏈�': 1233, '4鏈�': 2132, '5鏈�': 3211 }, + state2: { '1鏈�': 123, '2鏈�': 123, '3鏈�': 1412, '4鏈�': 23, '5鏈�': 123 } + }, + { + name: 'XX杩愮淮鍏徃3', + state: { '1鏈�': 1000, '2鏈�': 2131, '3鏈�': 1233, '4鏈�': 2132, '5鏈�': 3211, '6鏈�': 1321 }, + state2: { '1鏈�': 123, '2鏈�': 213, '3鏈�': 123, '4鏈�': 23, '5鏈�': 123 } + }, + { + name: 'XX杩愮淮鍏徃4', + state: { '1鏈�': 1000, '2鏈�': 2131, '3鏈�': 1233, '4鏈�': 2132, '5鏈�': 3211 }, + state2: { '1鏈�': 123, '2鏈�': 613, '3鏈�': 1412, '4鏈�': 2336, '5鏈�': 123 } + }, + { + name: 'XX杩愮淮鍏徃5', + state: { '1鏈�': 1000, '2鏈�': 433, '3鏈�': 1233, '4鏈�': 2132, '5鏈�': 8886 }, + state2: { '1鏈�': 123, '2鏈�': 213, '3鏈�': 1412, '4鏈�': 23, '5鏈�': 123 } + }, ], } }, @@ -52,12 +73,12 @@ initChart() { const option = { legend: { - right: '2%', - top: '5%', + right: 'right', + top: 'top', + orient: "vertical", icon: 'rect', data: [ { - name: '姝e父鏁�', itemStyle: { color: 'rgba(62, 144, 247, 1)' @@ -106,21 +127,45 @@ lineChart.setOption(option, true); }, + + companyChange() { + this.acitveData = this.dataList.find((item) => { + return item.name === this.company; + }); + if (this.acitveData) { + this.initChart(); + } + }, + + // 鐩戝惉鍙樺寲 + observe() { + if (!observer) { + observer = new ResizeObserver(entries => { + this.handleResize(); + }) + } + observer.observe(this.$refs.chartContent); + }, + // 绐楀彛鍙樻崲 handleResize() { if (lineChart) { - lineChart.resize() + lineChart.resize(); } } }, mounted() { this.acitveData = this.dataList[0]; + this.company = this.acitveData.name; lineChart = echarts.init(this.$refs.chartContent); this.initChart(); - window.addEventListener('resize', this.handleResize) + this.observe(); }, beforeDestroy() { - window.removeEventListener('resize', this.handleResize) + if (lineChart) { + lineChart.dispose(); + observer.unobserve(this.$refs.chartContent); + } }, } </script> @@ -148,7 +193,6 @@ align-items: center; z-index: 2; - .more-button { cursor: pointer; font-size: 16px; @@ -171,4 +215,4 @@ margin: 0 20px; width: 180px; } -</style> \ No newline at end of file +</style> -- Gitblit v1.8.0