【问题标题】:Leaflet - remove all map layers before adding a new one传单 - 在添加新图层之前删除所有地图图层
【发布时间】:2017-07-19 08:37:41
【问题描述】:

正如标题所说,我在添加新地图之前删除地图时遇到问题,我有这个函数,它可以绘制 Spinner 给出的图块(参数值是具有正确传单图块名称的字符串):

function drawMap(tile){ 
    map.addLayer(tile);
    map.eachLayer(function (layer) {
        if (layer !== tile) {
            map.removeLayer(layer);
        }
   });
}

变量映射就是这样初始化的,不会产生问题:

var map = L.map('map').fitBounds([
        [myPosJSON.NEBoundLat, myPosJSON.NEBoundLng],
        [myPosJSON.SWBoundLat, myPosJSON.SWBoundLng]
    ]);

如何修复 drawMap() 函数以正确显示地图? (我也必须用一组叠加层来做,但地图的过程可能是一样的)

【问题讨论】:

标签: javascript android maps leaflet layer


【解决方案1】:

不要在添加新图层后检查名称,而是先尝试删除所有图层,然后添加新图层:

function drawMap(tile){ 
    map.eachLayer(function (layer) {
        map.removeLayer(layer);
    });
    map.addLayer(tile);
}

【讨论】:

    猜你喜欢
    • 2015-04-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-16
    • 2017-07-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多