Я использую ответную нативную карту для рендеринга карты Google и выбора местоположения на ней с помощью маркеров в своем родном приложении. Карта и маркер отображаются, и маркер также можно перетаскивать, но полученный ответ не определен. это мой код.
<MapView
provider={PROVIDER_GOOGLE}
showsUserLocation={true}
zoomEnabled={true}
followUserLocation
loadingEnabled
showsMyLocationButton={true}
region={mapRegion}
onRegionChange={onRegionChange}
minZoomLevel={17}
>
<Marker.Animated
draggable
onDragEnd={(e) => this.onMarkerDragEnd(e.nativeEvent.coordinate)}
ref={markerRef}
coordinate={{
latitude: markerCord.droplatitude
? markerCord.droplatitude
: markerCord.wherelatitude,
longitude: markerCord.droplongitude
? markerCord.droplongitude
: markerCord.wherelongitude,
}}
image={require("../../assets/images/rsz_2red_pin.png")}
/>
</MapView>
, а также есть функция, которую я использовал
onMarkerDragEnd = (coord) => {
let newRegion = {
latitude: parseFloat(coord.latitude),
longitude: parseFloat(coord.longitude),
latitudeDelta: 0.0522,
longitudeDelta: 0.0321,
};
console.log("dragEnd", this.newRegion.latitude);
this.setState({
region: newRegion,
});
};
output undefined
, и я также пытаюсь таким образом, что я удаляю эта функция и использовать только
onDragEnd={(e) => {console.log("dragEnd",(e.nativeEvent.coordinate))}}
, она вернула
dragEnd Object {
"latitude": 37.32773286868661,
"longitude": -122.02642522752284,
}
, но когда я пытаюсь извлечь широту и долготу, она вернула неопределенное