有没有办法禁止标记或多边形在 leaflet-geoman 中拖动?
Is there a way to disable a marker or a polygon to be draggable in leaflet-geoman?
正如标题所说,我在地图上有一组不同的标记和多边形。
我想要做的就是禁用我在地图上创建的标记和要拖动的多边形,并且只使圆圈可拖动。
据我阅读文档,在拖动模式下无法做到这一点。
你是对的,没有办法禁用拖动。
但您可以使用此解决方法:
function enableDrag(){
map.eachLayer((layer)=>{
if(layer._dragDisabled){
layer._pmTempLayer = false;
layer._dragDisabled = false;
}
});
}
function disableDrag(){
map.eachLayer((layer)=>{
if(layer instanceof L.Circle){
layer._pmTempLayer = true;
layer._dragDisabled = true;
}
});
}
当图层有属性 _pmTempLayer
时在拖动功能中被过滤掉
正如标题所说,我在地图上有一组不同的标记和多边形。 我想要做的就是禁用我在地图上创建的标记和要拖动的多边形,并且只使圆圈可拖动。 据我阅读文档,在拖动模式下无法做到这一点。
你是对的,没有办法禁用拖动。
但您可以使用此解决方法:
function enableDrag(){
map.eachLayer((layer)=>{
if(layer._dragDisabled){
layer._pmTempLayer = false;
layer._dragDisabled = false;
}
});
}
function disableDrag(){
map.eachLayer((layer)=>{
if(layer instanceof L.Circle){
layer._pmTempLayer = true;
layer._dragDisabled = true;
}
});
}
当图层有属性 _pmTempLayer
时在拖动功能中被过滤掉