Навигация в функции Asyn c - React Navigation - React Native - PullRequest
1 голос
/ 06 марта 2020

Я пытаюсь перейти от одного компонента к другому экрану в ReactNative. Но получая следующее

Возможное необработанное отклонение обещания, TypeError: undefined не является объектом (оценка 'navigation.navigate')]]

Ниже приведен мой код, в котором я жду чтобы получить сведения о месте, а затем перейти к другому экрану с этими данными.

constructor(props) {
super(props)
this.state = {status: 'initial'}
this._handlePress = this._handlePress.bind(this);
 }



_handlePress = async ({navigation}) => {
const res = await this.props.fetchDetails(this.props.place_id)
console.log('result', res.geometry.location.lat)
navigation.navigate("Home", {selectedLocation: res.geometry.location});

}

Я также пытался this.props.navigation.navigate(), но не смог это исправить.

Я получаю следующее:

[Отклонение необработанного обещания: ошибка типа: undefined не является объектом (оценивается как _this.props.navigation.navigate ')]

Ниже приведен полный код компонента: Pastebin Link

1 Ответ

1 голос
/ 06 марта 2020

используйте метод withNavigation, так как вы уже импортировали его из реагирования-навигации.

export default withNavigation(LocationItem);

Если не решено, передайте навигацию как реквизит от того места, где он был использован.

<LocationItem navigation={this.props.navigation}/>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...