在 React-Leaflet 组件(LayerGroup)上调用方法

Calling methods on React-Leaflet components (LayerGroup)

我正在尝试在我的 React-Leaflet LayerGroup 上调用方法 toGeoJSON。 (最终我试图将图层组转换为 KML,但我找到了答案 here,我首先尝试将其转换为 geoJSON)

我尝试将 ref 添加到 LayerGroup,然后在其上调用 toGeoJSON,但它失败了,因为那不是一个函数。在检查 LayerGroup 的 ref 时,它似乎没有 leaflet documentation

中可用的任何方法

有办法解决这个问题吗?我导入了 Leaflet 和 ReactLeaflet 库,并且在函数的范围内,我只是不确定如何找到该函数。

我的代码的简化版本:

function MyMap(){
  const markerRef = useRef()

  function export(){
    let markers = markerRef.current
    let GeoJSON = markers.toGeoJSON() // < THIS LINE THROWS AN ERROR
  }

  return (
    <>
      <button onClick={export}>Export</button>
      <Map>
        <LayerGroup ref={this.markersRef}>{markers}</LayerGroup>
      </Map>
    </>
  )
}

更详尽的示例:https://codesandbox.io/s/react-lealfet-map-bug-report-4258z

刚好需要访问 markers.leafletElement.toGeoJSON()。可以通过 leafletElement.

访问传单方法

糟糕