Я использую DefaultMarkers , чтобы получить местоположение от пользователя.
У меня есть кнопка и функция.В функции я использую код для отображения широты в консоли.Теперь, когда я нажимаю кнопку, в консоли не происходит, но для второго нажатия я вижу широту в консоли.
Если я меняю местоположение и пытаюсь снова, я должен нажать кнопку дважды, чтобы увидеть широту в консоли.
constructor(props){
super(props);
this.state={
markers: [],
}
}
onMapPress(e) {
this.setState({
markers: [
{
coordinate: e.nativeEvent.coordinate,
key: 0,
},
],
});
}
SaveAddress=()=>{
console.log(JSON.stringify(this.state.markers[0].coordinate.latitude);
}
<Button onPress={this.SaveAddress}>
<Text>Save</Text>
</Button>
<MapView
style={styles.map}
initialRegion={{
latitude: 28.95761453,
longitude: 50.83710976,
latitudeDelta: 0.0040,
longitudeDelta: 0.0040,
}}
provider={this.props.provider}
onPress={(e) => this.onMapPress(e)}
>
{this.state.markers.map(marker => (
<Marker
key={marker.key}
coordinate={marker.coordinate}
/>
))}
</MapView>