我已经提到过这个问题。
我也可以实现,但问题是我将如何确定半径是否有一些变化,因为DrawingManager
组件将被卸载。
我也无法使用类似的功能,setDrawingMode(null)
因为它没有在 react-google-maps 公共 API 中公开,也options
无法drawingControl = false
正常更新。
有没有其他可能的解决方案,我们可以通过它来限制用户只创建一个圈子并且能够以radius_changed
某种方式获得?
下面是代码
<GoogleMap
defaultZoom={8}
defaultCenter={new google.maps.LatLng(-34.397, 150.644)}
>
<DrawingManager
defaultDrawingMode={google.maps.drawing.OverlayType.CIRCLE}
defaultOptions={{
drawingControl: true,
drawingControlOptions: {
position: google.maps.ControlPosition.TOP_CENTER,
drawingModes: [
google.maps.drawing.OverlayType.CIRCLE,
],
},
circleOptions: {
fillColor: `#ffff00`,
fillOpacity: 1,
strokeWeight: 5,
clickable: false,
editable: true,
zIndex: 1,
},
}},
onOverlayComplete={(...args)=> /* what to do to disable drawing??*/}
/>
</GoogleMap>
任何帮助将不胜感激。谢谢。