geoman - 在绘图模式下创建要素后如何在编辑模式下收听要素更改

geoman - how to listen to a feature change in edit mode after the feature has been created in draw mode

我正在听文档中记录的在“绘制模式”期间添加顶点 https://github.com/geoman-io/leaflet-geoman#draw-mode

map.on('pm:drawstart', ({ workingLayer }) => {  
  workingLayer.on('pm:vertexadded', e => {  
    console.log(e);  
  });
});

有时我画完了,“绘图模式”结束了。

然后我想编辑几何并启用“编辑模式”。

如何听取我刚刚在其中绘制几何图形的“workingLayer”的编辑?

我尝试了以下但没有成功...

map.on('pm:drawstart', ({ workingLayer }) => {  
  workingLayer.on('pm:vertexadded', e => {  
    console.log(e);
  });
  workingLayer.on('pm:edit', e => {
    console.log(e);
  });
});

更新:然后我打开脑袋想出了以下内容

map.on('pm:globaleditmodetoggled', e => {
  e.map.pm.getGeomanDrawLayers(true).on('pm:edit', e => {
    console.log(e)
  });
});

这是这样做的方法还是存在更有效的方法'?

使用监听器 pm:create 并向新创建的层添加 pm:edit 监听器。 然后事件 pm:edit 将在新图层上发生编辑时被触发。

map.on('pm:create', ({ layer}) => {  
  layer.on('pm:edit', e => {
    console.log(e);
  });
});