From e0eb378045eb18117fcf0a1eac6dad57ce6f743b Mon Sep 17 00:00:00 2001 From: wangqi <magical1908@outlook.com> Date: 星期三, 31 三月 2021 16:55:58 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/develop' into develop --- src/components/LayerController/service/LayerFactory.js | 75 +++++++++++++++++++++---------------- 1 files changed, 43 insertions(+), 32 deletions(-) diff --git a/src/components/LayerController/service/LayerFactory.js b/src/components/LayerController/service/LayerFactory.js index e7a585c..484d6e2 100644 --- a/src/components/LayerController/service/LayerFactory.js +++ b/src/components/LayerController/service/LayerFactory.js @@ -18,44 +18,55 @@ var layers = config.layers for (var j = 0; j < layers.length; j++) { var childConfig = layers[j] - var code = childConfig.code - var wfs = childConfig.wfs - var wms = childConfig.wms - var url = childConfig.url - // 鍒ゆ柇鏄惁宸茬粡鍔犺浇杩囷紝鍔犺浇杩囧氨 鐩存帴寰楀埌瀵硅薄璋冪敤 鏄剧ず鍑芥暟 - var layer = this.layers[code] - if (!layer) { - layer = this.L.featureGroup({}).addTo(this.map) - // 2. 鍒ゆ柇绫诲瀷 - if (wfs) { - // 3. 瀹炰緥鍖栧叿浣搒ervice - var wfsLayerService = new WfsLayerService(childConfig) - wfsLayerService.init(layer) - } - if (wms) { - var wmsLayerService = new WmsLayerService(childConfig) - wmsLayerService.init(layer) - } - // 璇锋眰涓氬姟鏁版嵁鎺ュ彛 - if (url) { - var busiLayerService = new BusiLayerService(childConfig) - busiLayerService.init(layer) - } - layer ? (this.layers[code] = layer) : console.log('LayerFactory锛歯ewLayer is null锛宲lease check !!!') - } else { - this.show(code) - } + var checked = childConfig.checked + checked && this.load(childConfig) } } } - show (code) { - var _layer = this.layers[code].addTo(this.map) - this.setZIndex(_layer) + load (config) { + var code = config.code + var wfs = config.wfs + var wms = config.wms + var url = config.url + // 鍒ゆ柇鏄惁宸茬粡鍔犺浇杩囷紝鍔犺浇杩囧氨 鐩存帴寰楀埌瀵硅薄璋冪敤 鏄剧ず鍑芥暟 + var layer = this.layers[code] + if (!layer) { + layer = this.L.featureGroup({}).addTo(this.map) + // 2. 鍒ゆ柇绫诲瀷 + if (wfs) { + // 3. 瀹炰緥鍖栧叿浣搒ervice + var wfsLayerService = new WfsLayerService(config) + wfsLayerService.init(layer) + this.setZIndex(layer) + } + if (wms) { + var wmsLayerService = new WmsLayerService(config) + wmsLayerService.init(layer) + } + // 璇锋眰涓氬姟鏁版嵁鎺ュ彛 + if (url) { + var busiLayerService = new BusiLayerService(config) + busiLayerService.init(layer) + } + layer ? (this.layers[code] = layer) : console.log('LayerFactory锛歯ewLayer is null锛宲lease check !!!') + } else { + this.show(code) + } } - hide (code) { - var layer = this.layers[code] + show (config) { + var layer = this.layers[config.code] + if (layer) { + layer.addTo(this.map) + this.setZIndex(layer) + } else { + this.load(config) + } + } + + hide (config) { + var layer = this.layers[config.code] layer && this.map.removeLayer(layer) } -- Gitblit v1.8.0