From ddcd3d468109751c16e3b3892256a98602b94f77 Mon Sep 17 00:00:00 2001 From: wangrui <zephyrs0894@163.com> Date: 星期五, 25 十二月 2020 10:47:44 +0800 Subject: [PATCH] 修改过滤器全选 --- src/components/LayerController/modules/LcServiceLayer.vue | 36 +++++++++++++++++++++++++++--------- 1 files changed, 27 insertions(+), 9 deletions(-) diff --git a/src/components/LayerController/modules/LcServiceLayer.vue b/src/components/LayerController/modules/LcServiceLayer.vue index d855b87..9f7892f 100644 --- a/src/components/LayerController/modules/LcServiceLayer.vue +++ b/src/components/LayerController/modules/LcServiceLayer.vue @@ -8,9 +8,9 @@ </div> <div class="wms-panel"> <div v-for="item in serviceWmsLayerList" :key="item.code" class="layerbox"> - <div><input type="checkbox" name="wmsLayer" :value="item.code" @change="swAllLayers"/>{{item.name}}</div> + <div><input type="checkbox" :name="'wmsLayer_'+item.code" :checked="item.inLegend" :value="item.code" @change="swAllLayers(item)"/>{{item.name}} <span @click="swFilter(item)" class="btn-filter">杩囨护</span></div> <div class="layerbox-item"> - <div class="basemap-layer-item" v-for="itm in item.layers" :key="itm.code"><input type="checkbox" name="wmsSublayers" :value="item.code" @change="swAllLayers"/>{{itm.sname}}</div> + <div class="basemap-layer-item" v-for="itm in item.layers" :key="itm.code"><input type="checkbox" :name="'wmsSublayers_'+item.code+'_'+itm.code" :checked="itm.checked" :value="itm.code" @change="swWmsLayer(itm)"/>{{itm.sname}}</div> </div> </div> </div> @@ -35,16 +35,21 @@ ...mapState({ serviceLayerHelper: (state) => { return state.serviceLayerHelper; - }, + } }), }, mounted() { // console.log('03姝ラ锛�', this.helper) }, methods: { - ...mapMutations([]), - swAllLayers(){ - + ...mapMutations(['setSelectedServiceLayer','toggleServiceLayerFilter']), + swAllLayers(item){ + // eslint-disable-next-line no-debugger + item.inLegend = !item.inLegend + for(let i = 0, len = item.layers.length; i < len; ++i){ + item.layers[i].checked = item.inLegend + } + this.updateWms() }, swTileLayer(){ console.log('璇ILE鏂规硶鏈疄鐜帮紒') @@ -52,8 +57,13 @@ swWmtsLayer(){ console.log('璇MTS鏂规硶鏈疄鐜帮紒') }, - swWmsLayer(){ - + swWmsLayer(itm){ + itm.checked = !itm.checked + this.updateWms() + }, + swFilter(item){ + this.$store.commit('setSelectedServiceLayer', item.code) + this.$store.commit('toggleServiceLayerFilter') }, updateServiceLayerList(){ // eslint-disable-next-line no-debugger @@ -79,6 +89,9 @@ this.serviceWmsLayerList.push(wmsCfg[i].config) } } + }, + updateWms(){ + } }, watch: { @@ -97,6 +110,9 @@ justify-content: center; align-items: center; + .btn-filter{ + cursor: pointer; + } .wms-panel{ display:flex; flex-flow: column; @@ -107,7 +123,9 @@ .layerbox-item{ display:flex; - flex-flow: row; + flex-flow: row wrap; + margin-left: 15px; + margin-top: 5px; .basemap-layer-item{ width: 50%; } -- Gitblit v1.8.0