diff --git a/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/index.vue b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/index.vue index 40647287..9ff12937 100644 --- a/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/index.vue +++ b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/index.vue @@ -96,7 +96,8 @@ export default { layerData: [], active: "事件专题", tabContentData: [], - + nowSelected: null, //当前点击选中的事件 title + nowSelectedCompleted: true, //选中事件的处理是否完成 // 路测设备-摄像机 dialogConfig: { // 0 有 可控(球机) ControlCamera | 1 ⽆ 不可控(枪机) Camera @@ -161,6 +162,7 @@ export default { this.active = layerData[defaultActive].title; this.minLayers = 3; + this.emitter.on("selectedCompleted", this.selectedCompletedHandle); }, mounted() { // 获取原始 Layer @@ -176,7 +178,13 @@ export default { getMinMapLayers(); }, + beforeDestroy() { + this.emitter.off("selectedCompleted", this.selectedCompletedHandle); + }, methods: { + selectedCompletedHandle(item) { + if (this.nowSelected === item.title) this.nowSelectedCompleted = true; + }, setFilterDataNoAction(data) { //纯更新data this.filterData = data; }, @@ -219,6 +227,10 @@ export default { const status = item.status; + console.log(item, "item"); + if (!status) { this.nowSelected = item.title; this.nowSelectedCompleted = false; } + else if (this.nowSelected === item.title && this.nowSelectedCompleted === false) return; + item.status = item.status ? "" : "_active"; console.log("%c [ key ]-102-「index.vue」", "font-size:15px; background:#9d63e9; color:#e1a7ff;", key); @@ -228,8 +240,8 @@ export default { await eventMap[`${key}${status ? "_close" : ""}`]?.call(this, item, this.filterData, isDefault, this.cb); }, - handleDevice: debounce(function (item) { - this.handleDeviceImmediate(item); + handleDevice: debounce(async function (item) { + await this.handleDeviceImmediate(item); }, 360), handleCleared() { const { mapIns } = this.getMap(); diff --git a/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/buttonEvent.js b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/buttonEvent.js index 3c457eb9..bd316ae4 100644 --- a/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/buttonEvent.js +++ b/ruoyi-ui/src/views/JiHeExpressway/pages/Home/components/RoadAndEvents/utils/buttonEvent.js @@ -166,8 +166,8 @@ export const eventMap = { removeData ); addDataPreHandle(removeData); - markerClusterIns.addData(removeData, isDefault); + this.emitter.emit("selectedCompleted", item); cacheRemoveFunc[`地图路测设备/${item.title}`] = () => { cbCall(); @@ -225,6 +225,7 @@ export const eventMap = { ); addDataPreHandle(removeData); markerClusterIns.addData(removeData, isDefault); + this.emitter.emit("selectedCompleted", item); cacheRemoveFunc[`地图事件专题/${item.title}`] = () => { cbCall(); @@ -275,6 +276,7 @@ export const eventMap = { ); addDataPreHandle(removeData); markerClusterIns.addData(removeData, isDefault); + this.emitter.emit("selectedCompleted", item); loadingMessage?.close();