我正在尝试实时获取地图的缩放级别,以创建一个将缩放锁定为当前值的按钮。我曾尝试使用getMapZoom和getZoom,但都给了我一个未定义的值。我认为我没有使用正确的ref,但是我找不到很多有关它的文档。这是代码:
<Map className="map-layer"
center={center}
onoverlayadd={this.overlayadd}
onoverlayremove={this.overlayremove}
ondragend={this.zoomChange}
onzoomend={console.log('Zoom: ' + this.mapRef.leafletElement.getMapZoom())}
zoom={this.state.zoom}
ref={this.mapRef}
preferCanvas={false}
animate={true}
scrollWheelZoom={this.state.zoomLock ? false : true}
doubleClickZoom={this.state.zoomLock ? false : true}
touchZoom={this.state.zoomLock ? false : true}
maxZoom={7}
minZoom={7}
>
在纯传单中,如果您将地图定义为const map = L.map("map", options)
,则仅调用map.getZoom()
。如果您使用的是react-leaflet,则应为this.mapRef.leafletElement.getZoom()