首页 / 浏览问题 / WebGIS / 问题详情
添加图层后图层没有出现
8EXP 2023年10月07日
                  var FeatureGroup  = new L.FeatureGroup().addTo(map)  
                  const  defFeatureGroup ={}
                  jQuery.extend(true,defFeatureGroup, FeatureGroup)
    
installPanel(FeatureGroup)
            //组装操作面板,显示子图层列表
            function installPanel(FeatureGroup) {
                var layersList = "";
                defFeatureGroup.eachLayer(function(layer){
                    layersList += '<li><label class="checkbox"><input value="' + layer.options.layersID + '" type="checkbox" class="directory-checkbox" checked /> <span class="name">'+ layer.options.layerName +'</span></label></li>'
                });
                $("#popupWin").html(layersList)
            };



        $("#popupWin").on("click", "input", function () { 
            
            var checkbox = $(this)
            var val = checkbox.val()
            defFeatureGroup.eachLayer(function(layer){
                if(val === layer.options.layersID){
                if (checkbox.is(':checked')) {
                    FeatureGroup.addLayer(layer);
                }
                else {
                    if(FeatureGroup.hasLayer(layer)){
                        FeatureGroup.removeLayer(layer);
                    }
                    }
                }
        })
    })

    FeatureGroup.on('layeradd',function(){
        console.log("添加成功")
    })

在移除图层后勾选添加成功打印添加成功但是所添加的图层没有展示

1个回答

你好,请问是做的子图层控制显隐吗?可以参考文档方式,使用layer的setVisibility( )方法来控制图层的显隐或者使用LayerSwitcher控件。

https://blog.csdn.net/supermapsupport/article/details/50728060

根据代码,是移除图层后二次添加没有展示,可以添加断点单步调试,或者在添加图层的代码前,增加标识打印判断是否有添加成功,例如,console.log("添加")。

1,865EXP 2023年10月07日
...