From 8356b1850885fe03a6bd388500a447dd5c42692c Mon Sep 17 00:00:00 2001
From: YANGDL <114714267@qq.com>
Date: 星期二, 05 一月 2021 10:23:30 +0800
Subject: [PATCH] 优化逻辑

---
 src/views/MapTemplate.vue |   44 ++++++++++++++++++++++++++++----------------
 1 files changed, 28 insertions(+), 16 deletions(-)

diff --git a/src/views/MapTemplate.vue b/src/views/MapTemplate.vue
index 2c19186..0356636 100644
--- a/src/views/MapTemplate.vue
+++ b/src/views/MapTemplate.vue
@@ -6,6 +6,7 @@
             <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>
   </div>
 </template>
@@ -13,21 +14,30 @@
 <script>
 import 'leaflet/dist/leaflet.css'
 import Sgis from '@src/Sgis'
-import mapConfig from '@/conf/MapConfig'
+// import mapConfig from '@/conf/MapConfig'
 import SgisLayerController from '@components/LayerController/LayerController'
 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 { mapMutations } from 'vuex'
+// import { mapMutations, mapState } from 'vuex'
 
 export default {
   name: 'MapTemplate',
-  components: {SgisLayerController, MonitorPanel, LcBasemap, LcServiceLayer},
+  components: {SgisLayerController, MonitorPanel, LcBasemap, LcServiceLayer, LcServiceLayerFilter},
   data(){
     return {
       basemapHelper: {},
       serviceLayerHelper: {},
       vectorLayerHelper: {}
+    }
+  },
+  computed:{
+    showServiceLayerFilter(){
+      return this.$store.state.map.showServiceLayerFilter
+    },
+    mapConfig(){
+      return this.$store.state.map.mapConfig
     }
   },
   beforeMount(){
@@ -36,29 +46,31 @@
       })
   },
   methods:{
-      ...mapMutations({
-        setMapObj: 'setMapObj',
-        setBasemapHelper: 'setBasemapHelper',
-        setServiceLayerHelper: 'setServiceLayerHelper',
-        setVectorLayerHelper: 'setVectorLayerHelper',
-      }),
+    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.initBasemapsHelper(this.mapObj.map, this.mapObj.L) // 鍒濆鍖栧熀纭�搴曞浘鍔╂墜
-        this.basemapHelper.initBasemap(mapConfig, false) // 绗簩涓弬鏁帮紝琛ㄧず鏄惁鍐呯綉搴曞浘
+        this.basemapHelper.initBasemap(this.mapConfig, false) // 绗簩涓弬鏁帮紝琛ㄧず鏄惁鍐呯綉搴曞浘
 
         this.serviceLayerHelper = Sgis.initTileLayersHelper(this.mapObj.map, this.mapObj.L) // 鍒濆鍖栦笟鍔″簳鍥惧姪鎵�
-        this.serviceLayerHelper.initServiceLayers(mapConfig)
+        this.serviceLayerHelper.initServiceLayers(this.mapConfig)
 
         this.vectorLayerHelper = Sgis.initVectorLayersHelper(this.mapObj.map, this.mapObj.L) // 鍒濆鍖栧姩鎬佽绱犲浘灞傚姪鎵�
-        this.vectorLayerHelper.initVectorLayers(mapConfig)
+        this.vectorLayerHelper.initVectorLayers(this.mapConfig)
 
-        this.setMapObj(this.mapObj)
-        this.setBasemapHelper(this.basemapHelper)
-        this.setServiceLayerHelper(this.serviceLayerHelper)
-        this.setVectorLayerHelper(this.vectorLayerHelper)
+
+        this.saveMapStatus()
+        // this.setMapObj(this.mapObj)
+        // this.setBasemapHelper(this.basemapHelper)
+        // this.setServiceLayerHelper(this.serviceLayerHelper)
+        // this.setVectorLayerHelper(this.vectorLayerHelper)
       }
   }
 }

--
Gitblit v1.8.0