From 392b411e0a19130ae9cb375c1fb8d2cbab5a4c14 Mon Sep 17 00:00:00 2001 From: 徐旺旺 <11530253@qq.com> Date: 星期四, 06 五月 2021 16:55:19 +0800 Subject: [PATCH] popup改为弹窗 --- src/components/LayerController/service/WmsLayerService.js | 16 ++++++++++++++-- src/views/MapTemplate.vue | 7 +------ src/views/popup/Popup.vue | 21 ++++++++++++++------- 3 files changed, 29 insertions(+), 15 deletions(-) diff --git a/src/components/LayerController/service/WmsLayerService.js b/src/components/LayerController/service/WmsLayerService.js index 9e6d2f5..38758ff 100644 --- a/src/components/LayerController/service/WmsLayerService.js +++ b/src/components/LayerController/service/WmsLayerService.js @@ -1,5 +1,6 @@ import AjaxUtils from '../../../utils/AjaxUtils' import { PIPELINE_WMS } from '../../../conf/Constants' +import Popup from '@views/popup/Popup' /** * todo 寰楄�冭檻涓�涓浘灞傞厤缃簡澶氫釜 wmsLayers鐨勬儏鍐� @@ -118,7 +119,7 @@ var myIcon = this.L.divIcon({ className: 'my-div-icon' }) this.L.marker(e.latlng, { icon: myIcon - }).addTo(this.featureGroup) + }).addTo(this.featureGroup)/* .bindPopup((layer) => { this.popupComp.setDatas(popupDatas) this.popupComp.setShow() @@ -129,7 +130,18 @@ closeButton: false, autoClose: false }) - .openPopup() + .openPopup() */ + window.$layer.open({ + content: { + content: Popup, // 缁勪欢 + data: { // 浼犻�掔殑鍙傛暟 + datas: popupDatas + } + }, + title: '' // 鏍囬 + }) + // this.popupComp.setDatas(popupDatas) + // this.popupComp.setShow() } }) } diff --git a/src/views/MapTemplate.vue b/src/views/MapTemplate.vue index 51c3ab4..d0bffe7 100644 --- a/src/views/MapTemplate.vue +++ b/src/views/MapTemplate.vue @@ -1,6 +1,6 @@ <template> <div class="full-screen"> - <popup ref="popup" @callPopup="callPopup"></popup> + <!--<popup ref="popup" @callPopup="callPopup"></popup>--> <div id="map" ref="rootmap"> </div> <sgis-layer-controller></sgis-layer-controller> @@ -30,7 +30,6 @@ // import summarySheets from '@components/table/summarySheets.vue' import SummarySheet from '@components/table/SummarySheet' import ToolBoxPanel from '@components/panel/ToolBoxPanel' -import Popup from '@views/popup/Popup' // import MenuSpecial from '@components/panel/MenuTopic' import LegendPanel from '@components/panel/LegendPanel' // import Enterprise from '../components/table/enterprise' @@ -49,7 +48,6 @@ // TopEnterprisePanel, SgisLayerController, MonitorPanel, - Popup, // summarySheets, SummarySheet, PublicBounced @@ -114,9 +112,6 @@ // this.setBasemapHelper(this.basemapHelper) // this.setServiceLayerHelper(this.serviceLayerHelper) // this.setVectorLayerHelper(this.vectorLayerHelper) - }, - onLayerClick () { - this.$refs.popup.setShow() }, callPopup (val) { console.log(val) diff --git a/src/views/popup/Popup.vue b/src/views/popup/Popup.vue index 8e8b877..a67a49f 100644 --- a/src/views/popup/Popup.vue +++ b/src/views/popup/Popup.vue @@ -1,11 +1,11 @@ <template> - <div id="popup" v-if="isShow" class="s-map-popup-panel"> - <el-tabs v-model="tabsValue" type="card"> + <div id="popup" class="s-map-popup-panel" style="min-width: 280px;max-width: 280px;padding: 0 10px"> + <el-tabs :value="0" type="card"> <el-tab-pane :key="item.name" - v-for="(item) in tabs" + v-for="(item,index) in datas" :label="item.title" - :name="item.name" + :name="index" > <el-row v-for="(v,k) in filter(item.content)" :key="k"> <el-col :span="12"><B>{{k}}锛�</B></el-col> @@ -22,10 +22,10 @@ export default { name: 'Popup', + props: ['datas'], data () { return { tabsValue: '', - tabs: [], tabIndex: 2, isShow: false, properties: {}, @@ -47,18 +47,25 @@ }, setDatas (layer) { console.log(layer) - this.tabs = layer + this.datas = layer this.tabsValue = layer[0].name }, setShow () { // this.style.display='auto' - this.data = 'adsfadfsadfsdafsdfsdfdsafsdafsdafa' this.isShow = true }, onClick () { const param = 1111 this.$emit('callPopup', param) } + }, + watch: { + datas (newVal) { + console.log(newVal) + if (newVal != null) { + this.tabsValue = newVal[0].name + } + } } } </script> -- Gitblit v1.8.0