初学Leaflet的时候,遇到一个问题,就是教程有教怎么添加一个Marker标记,那么到底该怎么删除一个Marker呢?
搜边国内网站果然是找不到想要的答案。
下面是我在 Leaflet官方文档 所找到的答案 ,希望可以帮助到大家
比如以下例子:
var marker;
function onMapClick(e) {
marker = new L.Marker(e.latlng, {draggable:true});
map.addLayer(marker);
marker.bindPopup("<b>Hello world!</b><br />I am a popup.").openPopup();
};
这里我们新增了一个变量Marker用来存放用户鼠标点击时候生成的Marker
如果我们不把旧的Marker删掉,那么每次用户点击地图,都会生成一个新的Marker,就会导致地图上越来越多Marker
删除Marker的话其实很简单,只需要下面一行代码就可以搞定:
map.removeLayer(marker)
如果你的地图上有很多Marker,你也想用removeLayer方法去删除它们,那么你可以为它们创建一个数组,然后再执行此操作。