【发布时间】:2014-01-14 22:40:05
【问题描述】:
使用javascript,如何更改leaflet.draw“垃圾箱”按钮以删除所有已绘制的多边形并自动保存。下面是我实现的代码,但它是一个完整的 hack。它会删除活动的多边形,但是在我删除一个对象后,当我单击NotFoundError: Node was not found 和TypeError: this._deletedLayers is null 之类的“垃圾箱”图标时开始在控制台中出现错误
map.on('draw:editstart', function (e) {
if(e.handler == 'remove' && typeof drawnItem != 'undefined' && drawnItem !== null){
if(window.console) window.console.log('Drawing deleted...');
if(typeof drawnItem != 'undefined' && drawnItem !== null){
drawnItems.removeLayer(drawnItem);
}
$('.leaflet-draw.leaflet-control .leaflet-draw-actions').hide();
$('.leaflet-popup-pane .leaflet-draw-tooltip').remove();
}
});
【问题讨论】:
-
看起来好像这可能无法使用 leaflet.draw 除非进行自定义构建:github.com/Leaflet/Leaflet.draw/issues/264
标签: javascript leaflet leaflet.draw