Leaflet 添加标记/更新(如果存在)
下面的表达式在每次单击时添加一个新标记Leaflet 添加标记/更新(如果存在),leaflet,Leaflet,下面的表达式在每次单击时添加一个新标记 map.on('click', function(e) { var new_event_marker = L.marker(e.latlng, { draggable: true} ); new_event_marker.addTo(map); }); 我如何重写上述内容,使其只创建一个标记?如果标记存在,则更新其板条 谢谢首先,您应该在单击功能之外定义标记。然后您可以测试标记是否存在。以下代码应该有效: var
map.on('click', function(e) {
var new_event_marker = L.marker(e.latlng, { draggable: true} );
new_event_marker.addTo(map);
});
我如何重写上述内容,使其只创建一个标记?如果标记存在,则更新其板条
谢谢首先,您应该在单击功能之外定义标记。然后您可以测试标记是否存在。以下代码应该有效:
var new_event_marker; // replace marker
map.on('click', function(e) {
if(typeof(new_event_marker)==='undefined')
{
new_event_marker = new L.marker(e.latlng,{ draggable: true});
new_event_marker.addTo(map);
}
else
{
new_event_marker.setLatLng(e.latlng);
}
});