Я использую leaflet.draw для создания фигур (геозоны) на карте, и когда я рисую круг, я получаю эту ошибку Uncaught TypeError: Невозможно прочитать свойство 'length' с нулевым значением , так как кругне имеет длины, и я также получаю эту ошибку, когда я помещаю editable: true в shapeOptions:
$("#mapContainer").on("click", ".btnCircleDraw",function(){
circleDrawer = new L.Draw.Circle(map, {
shapeOptions: {
color: color,
fillOpacity: opacity,
fillColor: color,
stroke: color,
opacity: opacity,
editable: true
}
});
map.on('draw:created', drawCreated);
circleDrawer.enable();
});
У меня есть эта функция drawCreated:
function drawCreated(e) {
type = e.layerType,
layer = e.layer;
layer.addTo(drawnItems);
console.log(type, ' drawn', layer);
layer.on("edit", function(event) {
var content = "";
if (type === "circle") {
//content = 'Circle with : <ul><li> Radius : ' + layer.getRadius() + '</li>'+
//'<li> Center : ' + layer.getLatLng() + ' </li></ul>';
var lngLat = layer.getLatLng();
console.log("new: ", lngLat);
}
});
if (type === 'circle') {
var theCenterPt = layer.getLatLng();
var theRadius = layer.getRadius();
points['lng'] = theCenterPt.lng;
points['lat'] = theCenterPt.lat;
points['radius'] = theRadius;
console.log(points);
drawnItems.addLayer(layer);
}
}
есть ли решение или альтернатива для этой проблемы?