如何找到用户点击折线的位置?
How can I find where a user has clicked on a Polyline?
如果我使用点击功能向我的地图添加折线:
onPolylineClick = (props, polyline) => {
console.log(props)
console.log(polyline)
}
<Polyline
onClick={this.onPolylineClick}
path={gpsCoords}
/>
那我怎么知道它在哪一行被点击了呢?我可以看到 props.mapCenter
,但这不会根据我点击的位置而改变,它只是地图的中心。
您还需要在 onPolylineClick 中传递第三个参数,因为您在多段线中单击的点的 latLng 在那里。你可以这样做:
onPolylineClick = (props, polyline, e) => {
console.log("Polyline Clicked on latlng: ")
console.log(e.latLng.lat()+","+e.latLng.lng());
};
你可以检查这个sample code。确保将您的 API 密钥添加到 GoogleApiWrapper 中,以便代码正确 运行。
如果我使用点击功能向我的地图添加折线:
onPolylineClick = (props, polyline) => {
console.log(props)
console.log(polyline)
}
<Polyline
onClick={this.onPolylineClick}
path={gpsCoords}
/>
那我怎么知道它在哪一行被点击了呢?我可以看到 props.mapCenter
,但这不会根据我点击的位置而改变,它只是地图的中心。
您还需要在 onPolylineClick 中传递第三个参数,因为您在多段线中单击的点的 latLng 在那里。你可以这样做:
onPolylineClick = (props, polyline, e) => {
console.log("Polyline Clicked on latlng: ")
console.log(e.latLng.lat()+","+e.latLng.lng());
};
你可以检查这个sample code。确保将您的 API 密钥添加到 GoogleApiWrapper 中,以便代码正确 运行。