From 1e40f7d8824d8859a6edbec3ae3fd0d857115553 Mon Sep 17 00:00:00 2001 From: YANGDL <114714267@qq.com> Date: 星期二, 05 一月 2021 12:04:52 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- src/views/MapTemplate.vue | 84 ++++++++++++++++++++++++++++++++---------- 1 files changed, 64 insertions(+), 20 deletions(-) diff --git a/src/views/MapTemplate.vue b/src/views/MapTemplate.vue index 3706946..c945854 100644 --- a/src/views/MapTemplate.vue +++ b/src/views/MapTemplate.vue @@ -1,54 +1,98 @@ <template> <div class="full-screen"> <div id="map" ref="rootmap"></div> - <sgis-layer-controller :preset="'warningPreset'"></sgis-layer-controller> + <sgis-layer-controller :preset="'warningPreset'"> + <lc-basemap></lc-basemap> + <div class="barline"></div> + <lc-service-layer></lc-service-layer> + </sgis-layer-controller> + <lc-service-layer-filter v-show="showServiceLayerFilter" ref="serviceLayerFilter"></lc-service-layer-filter> + <monitor-panel></monitor-panel> + <top-enterprise-panel></top-enterprise-panel> </div> </template> <script> import 'leaflet/dist/leaflet.css' import Sgis from '@src/Sgis' +// import mapConfig from '@/conf/MapConfig' import SgisLayerController from '@components/LayerController/LayerController' -import { mapMutations, mapState } from 'vuex' +import LcBasemap from '@components/LayerController/modules/LcBaseMap' +import LcServiceLayer from '@components/LayerController/modules/LcServiceLayer' +import LcServiceLayerFilter from '@components/LayerController/modules/LcServiceLayerFilter' +import MonitorPanel from '@components/panel/MonitorPanel' +import TopEnterprisePanel from "@components/panel/TopEnterprisePanel"; export default { name: 'MapTemplate', - components: {SgisLayerController, }, - datas:{ - ...mapState("/",{}) + components: {TopEnterprisePanel, SgisLayerController, MonitorPanel, LcBasemap, LcServiceLayer, LcServiceLayerFilter}, + data(){ + return { + basemapHelper: {}, + serviceLayerHelper: {}, + vectorLayerHelper: {} + } }, - mounted(){ + computed:{ + showServiceLayerFilter(){ + return this.$store.state.map.showServiceLayerFilter + }, + mapConfig(){ + return this.$store.state.map.mapConfig + } + }, + beforeMount(){ this.$nextTick(() => { this.init() }) }, methods:{ - ...mapMutations({ - setMapObj: 'setMapObj', - setLayerHelper: 'setLayerHelper' - }), + saveMapStatus(){ + this.$store.commit('setMapObj', this.mapObj); + this.$store.commit('setBasemapHelper', this.basemapHelper); + this.$store.commit('setServiceLayerHelper', this.serviceLayerHelper); + this.$store.commit('setVectorLayerHelper', this.vectorLayerHelper); + }, init() { const mapcontainer = this.$refs.rootmap this.mapObj = Sgis.initMap(mapcontainer) - this.basemapHelper = Sgis.initBasemaps(this.mapObj.map, this.mapObj.L) // 鍒濆鍖栧簳鍥� - this.vectorLayerHelper = Sgis.initLayers(this.mapObj.map, this.mapObj.L, {}, this.$nodeEnv) // 鍒濆鍖栦笟鍔″浘灞� - this.setLayerHelper(this.vectorLayerHelper) - return this.map - }, - setLayerHelper(){ + this.basemapHelper = Sgis.initBasemapsHelper(this.mapObj.map, this.mapObj.L) // 鍒濆鍖栧熀纭�搴曞浘鍔╂墜 + this.basemapHelper.initBasemap(this.mapConfig, false) // 绗簩涓弬鏁帮紝琛ㄧず鏄惁鍐呯綉搴曞浘 + + this.serviceLayerHelper = Sgis.initTileLayersHelper(this.mapObj.map, this.mapObj.L) // 鍒濆鍖栦笟鍔″簳鍥惧姪鎵� + this.serviceLayerHelper.initServiceLayers(this.mapConfig) + + this.vectorLayerHelper = Sgis.initVectorLayersHelper(this.mapObj.map, this.mapObj.L) // 鍒濆鍖栧姩鎬佽绱犲浘灞傚姪鎵� + this.vectorLayerHelper.initVectorLayers(this.mapConfig) + + + this.saveMapStatus() + // this.setMapObj(this.mapObj) + // this.setBasemapHelper(this.basemapHelper) + // this.setServiceLayerHelper(this.serviceLayerHelper) + // this.setVectorLayerHelper(this.vectorLayerHelper) } } } </script> -<style lang="less" scoped> +<style lang="less"> + .full-screen{ - width: calc(100vw); - height: calc(100vh); - overflow: hidden; + width: 100%; + height: 100%; margin: 0; padding: 0; position: absolute; + #map{ + height: 100%; + width: 100%; + } + .barline{ + width: 100%; + height: 1px; + background-color: #0661AE; + } } </style>> -- Gitblit v1.8.0