另一種方法是使用Leaflet-Geoman而不是Leaflet-Draw。 在那里,您可以創建繪圖實例的副本,并為其添加新的形狀名稱: // copy a rectangle and customize its name, block, title and actionsmap.pm.Toolbar.copyDrawControl('Polygon', { name: 'PolygonCopy', block: 'custom', title: 'Display text on hover button', actions: ['cancel', 'removeLastVertex', 'finish'],}); 然后可以在創建事件中檢查形狀名稱: // listen to when a new layer is createdmap.on('pm:create', function(e) { console.log(e) if(e.shape === 'Polygon'){ alert('Original Polygon') }else if(e.shape === 'PolygonCopy'){ alert('Copy Polygon') }}); https://jsfiddle.net/falkedesign/r0sm9auo/