From f521ebc2551d468c4c478783a18d4b0714394d61 Mon Sep 17 00:00:00 2001 From: suerprisePlus <15810472099@163.com> Date: 星期一, 14 十月 2024 15:00:13 +0800 Subject: [PATCH] 配网大屏功能优化 --- src/views/visualization/list/chart.vue | 55 ++++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 40 insertions(+), 15 deletions(-) diff --git a/src/views/visualization/list/chart.vue b/src/views/visualization/list/chart.vue index 214e717..5583f5f 100644 --- a/src/views/visualization/list/chart.vue +++ b/src/views/visualization/list/chart.vue @@ -22,24 +22,28 @@ </div> </td> </tr> - <tr v-for="(item, i) in childData.val"> - <td>{{ item.address }}</td> - <td>{{ item.line }}</td> - <td style="color:#f56c6c">{{ item.level }}</td> + <tr> + <td>{{ roadItem.address }}</td> + <td>{{ roadItem.line }}</td> + <td style="color:#f56c6c">{{ roadItem.level }}</td> <td style="color:#409eff"> - <el-button v-show="flagData != item.address" class="elButton" type="primary" plain size="mini" - @click="setChangeItem(item)">璇︽儏</el-button> - <el-button v-show="flagData == item.address" class="elButton" type="danger" plain size="mini" - @click="setCannelItem(item)">閲嶇疆</el-button> + <el-button v-show="flagData != roadItem.address" class="elButton" type="primary" plain + size="mini" @click="setChangeItem()">璇︽儏</el-button> + <el-button v-show="flagData == roadItem.address" class="elButton" type="danger" plain + size="mini" @click="setCannelItem()">閲嶇疆</el-button> </td> </tr> </table> + <div class="chartEchart"> + <div :id="chartId" class="myChart"> </div> + </div> </div> </div> </template> <script> import * as echarts from 'echarts'; +import mapWeather from './mapWeather'; export default { props: { @@ -54,8 +58,9 @@ this.chartId = newValue.id; this.title = newValue.title; setTimeout(() => { - this.setEchartChange(newValue) - }, 1000); + this.setEchartChange(newValue.val[0]) + + }, 200); } } }, @@ -64,19 +69,34 @@ chartId: "", title: "", flagData: null, + roadItem: {}, } }, + created() { + window.addEventListener('POIDetailDataChange', this.handlePOIDetailDataChange) + }, + methods: { setCannelItem() { this.flagData = null; + mapWeather.closeRegionWeather() }, - setChangeItem(res) { - this.flagData = res.address; + handlePOIDetailDataChange() { + if (this.flagData == window.regionWeather) return + this.flagData = window.regionWeather; + }, + setChangeItem() { + var res = this.roadItem; + window.regionWeather = res.address; + var event = new Event('POIDetailDataChange'); + window.dispatchEvent(event); + mapWeather.setRegionWeatherType(res); }, setEchartChange(res) { - if (!res.data) return; - const data = res.data; + this.roadItem = res + if (!this.roadItem.data) return; + const data = this.roadItem.data; const id = document.getElementById(this.chartId) var std = []; for (var i = 0; i < data.length; i++) { @@ -87,7 +107,7 @@ const myChart = echarts.init(id); var option = { title: { - text: res.address, + text: "", textStyle: { color: "white" } @@ -164,7 +184,12 @@ color: white; display: flex; flex-direction: column; + // justify-content: space-around; + .chartEchart { + flex: 1; + + } .myChart { width: 100%; -- Gitblit v1.9.3