我找不到如何更改layerGroup中放置的图层(L.Marker)坐标的方法
我创建了全局变量var newMarker = L.marker([decimal_lat, decimal_lon]);
markerGroup.addLayer( newMarker );
然后我有一个功能,我在这里创建像:
这样的图层(markerGroup.getLayer(id)).setLatLngs( L.latLng(parseFloat(lat_p), parseFloat(lon_p)) );
我有一个模态对话框窗口,我可以更改标记的坐标(取决于我更改了我的图层中的标记):
{{1}}
但是这个解决方案会产生如下错误:
无法读取属性' setLatLngs'未定义的
有没有办法如何改变L.Marker在L.layerGroup中特定位置的坐标?
答案 0 :(得分:2)
标记图层没有setlatLngs
方法,它们确实有setLatLng
。很可能你犯了一个拼写错误。
以下fiddle我正确地重现了您的问题。首先,我添加了一个带有任意坐标的标记,然后我将其移动到地图的中心,确切地说是设置地图视图的位置。
var markerGroup = new L.layerGroup();
var newMarker = L.marker([1000, 1000]);
markerGroup.addLayer( newMarker );
markerGroup.addTo(map);
markerGroup.getLayer(24).setLatLng(new L.LatLng(0,0));