Ответ 1
В приведенном выше фрагменте кода маркер не определяется в момент добавления обработчика события. Попробуйте следующее, когда слушатель переадресации добавляется сразу же после создания маркера:
function onMapClick(e) {
gib_uni();
marker = new L.marker(e.latlng, {id:uni, icon:redIcon, draggable:'true'});
marker.on('dragend', function(event){
var marker = event.target;
var position = marker.getLatLng();
console.log(position);
marker.setLatLng(position,{id:uni,draggable:'true'}).bindPopup(position).update();
});
map.addLayer(marker);
};
Вам также не хватало скобки в конце вашей новой линии L.Marker().
Вы также помещаете position
в массив в вызове setLatLng
, но он уже является объектом LatLng
.