From b0cf75f3257f5ce04b52fd48654945cc58537147 Mon Sep 17 00:00:00 2001 From: 少年 <1392120328@qq.com> Date: 星期二, 06 二月 2024 18:15:39 +0800 Subject: [PATCH] 11 --- src/components/poplayer/poplayer2.vue | 14 ++++++++++---- src/components/leftMenu/sousuo2.vue | 6 ++++++ src/utils/map2.js | 13 +++++++++++-- src/utils/store2.js | 6 +++--- 4 files changed, 30 insertions(+), 9 deletions(-) diff --git a/src/components/leftMenu/sousuo2.vue b/src/components/leftMenu/sousuo2.vue index f8d90fe..591fa3f 100644 --- a/src/components/leftMenu/sousuo2.vue +++ b/src/components/leftMenu/sousuo2.vue @@ -217,6 +217,12 @@ // 閫�鍑烘悳绱㈢晫闈� cancless() { this.ssjm = false; + if (window.pointArr && window.pointArr.length > 0) { + window.pointArr.forEach(item => { + window.map.removeLayer(item) + }) + window.pointArr = [] + } }, getArea() { let height = Viewer.container.offsetHeight; diff --git a/src/components/poplayer/poplayer2.vue b/src/components/poplayer/poplayer2.vue index 81a205f..036906c 100644 --- a/src/components/poplayer/poplayer2.vue +++ b/src/components/poplayer/poplayer2.vue @@ -1,7 +1,7 @@ <template> - <div class="landAdmin"> + <div class="landAdmin" v-if="state.show"> <transition name="el-zoom-in-bottom"> - <div class="Poplayer" v-if="state.show"> + <div class="Poplayer"> <div class="close" @click.stop="closehandle"></div> <div class="title">鐐逛綅璇︽儏</div> <div class="content"> @@ -45,11 +45,16 @@ methods: { closehandle() { store.setdwInfo({}); - divPoint3 && divPoint3.deleteObject(); - store.setTdglShow(false); + store.setdwShow(false) if (window.tdglLine) { window.map.removeLayer(window.tdglLine); window.tdglLine = null; + } + if (window.pointArr && window.pointArr.length > 0) { + window.pointArr.forEach(item => { + window.map.removeLayer(item) + }) + window.pointArr = [] } }, }, @@ -64,6 +69,7 @@ /* background: white; */ z-index: 1000; } + .Poplayer { /* min-width: 350px; */ min-height: 180px; diff --git a/src/utils/map2.js b/src/utils/map2.js index cbe393c..aa51199 100644 --- a/src/utils/map2.js +++ b/src/utils/map2.js @@ -8,7 +8,7 @@ import Vue from 'vue'; import axios from "axios"; import _GLOBAL from '@/assets/GLOBAL2'; -import poiLayer2 from '@/components/poplayer/main2'; +import poiLayer from '@/components/poplayer/main'; import store from "@/utils/store2"; import { Message } from 'element-ui'; let tdglLine, qiyexinxi, qysl, ydbm, ydlx, cyfx, crzt, ydmj, crnx, crnf, rjl, jzxg, jzmd; @@ -16,7 +16,7 @@ var clickEvent; window.tdglLine = tdglLine -let PoiLayerConstructor = Vue.extend(poiLayer2); +let PoiLayerConstructor = Vue.extend(poiLayer); /**鏍稿績鍖� */ export function loadHXQ() { let urls = window.gisBaseUrl + "/gisserver/wmsserver/YZ_BJ60"; @@ -2203,6 +2203,7 @@ //openlayer 鍒涘缓鐐逛綅 +window.pointArr = []; export function createPointMarker(position, obj) { let startFeature = new ol.Feature({ geometry: new ol.geom.Point(position), @@ -2210,6 +2211,12 @@ startFeature.setProperties({ desc: obj, }); + if (window.pointArr && window.pointArr.length > 0) { + window.pointArr.forEach(item => { + window.map.removeLayer(item) + }) + window.pointArr = [] + } let MarkerLayer = new ol.layer.Vector({ id: 'LocationPoint', name: '鏍囪鐐�', @@ -2229,6 +2236,7 @@ }), zIndex: 1099, }) + window.pointArr.push(MarkerLayer) return MarkerLayer; } @@ -2367,6 +2375,7 @@ store.setTdglShow(false); store.setTdlgInfo({}); + store.setdwShow(true); store.setdwInfo(objdata); // if (window.instance) { diff --git a/src/utils/store2.js b/src/utils/store2.js index 71ea321..b563186 100644 --- a/src/utils/store2.js +++ b/src/utils/store2.js @@ -157,13 +157,13 @@ info: {} }, setdwFlag(val) { - this.tdglInfo.flag = val; + this.dwInfo.flag = val; }, setdwShow(val) { - this.tdglInfo.show = val; + this.dwInfo.show = val; }, setdwInfo(val) { - this.tdglInfo.info = val; + this.dwInfo.info = val; }, /** * 鍘嗗彶褰卞儚 -- Gitblit v1.9.3