Я использовал избыточную форму в своем собственном приложении. Я хочу иметь адресные поля с картой. Карта должна показывать текущее местоположение, и пользователь может искать адрес в поле автозаполнения. Я хочу обновить широту / долготу в состояниях, когда пользователь выбирает конкретный адрес.
Я перешел по этой ссылке:
https://snack.expo.io/@mdmoin/react-native-maps-autocomplete
Но мне нужно преобразовать это в избыточную форму.
Поле ввода автозаполнения:
class MapInput extends React.Component {
render() {
return (
<GooglePlacesAutocomplete
placeholder='Search'
minLength={2}
autoFocus={true}
returnKeyType={'search'}
listViewDisplayed={false}
fetchDetails={true}
onPress={(data, details = null) => {
alert(details.geometry.location.latitude);
// 'details' is provided when fetchDetails = true
//this.props.notifyChange(details.geometry.location);
//console.log(this.props.onC);
this.props.input.onChange(this.changeState(details.geometry.location));
}
}
query={{
key: 'MY_KEY',
language: 'en'
}}
nearbyPlacesAPI='GooglePlacesSearch'
debounce={200}
/>
);
}
}
В моей редукционной форме:
<Field name="location" component={MapInput} />
<MapView
style={{ width: width, height: 300 }}
initialRegion={initialRegion}
ref={mapRef => mapRef === null ? null : mapRef.fitToElements(true)}
>
<Marker
coordinate={this.props.location}
key={`marker-${this.props.location.latitude}`}
title="My Marker"
description="Some description"
/>
</MapView>
Как я могу обновить lat, long (значение состояния), используя OnChange из избыточной формы?