使用JavaScript,如何更改leaflet.draw中的“垃圾桶”按钮以删除所有已绘制的多边形并自动保存。下面是我实现的代码,但它是一个完全的hack。它会删除活动多边形,但在我删除对象一次后,当我点击“垃圾桶”图标时,在控制台中开始出现错误,如
NotFoundError:找不到节点
和TypeError:this._deletedLayers为空
。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();
}
});