Описание проблемы
Пытаюсь запихнуть новый экран с Navigation.push(this, {
component: {
name: 'awesome-places.AuthScreen' }})
и выдает ошибку Exepction in HostFunction <unknown>
Действия по воспроизведению / фрагменты кода / снимки экрана
Создайте приложение RN, установите необходимые модули (redux, react-redux, response-native-navigation, react-vector-icons) и запустите код на устройстве Android.
Добавьте соответствующий код, App.js и компонент, вызывающий ошибку. Я пробовал запустить Navigation.push с this.props.componentId
, но когда я нажимаю кнопку, ответа нет
App.js
import { Navigation } from 'react-native-navigation';
import { Provider } from 'react-redux';
import AuthScreen from './src/screens/Auth/Auth';
import SharePlaceScreen from './src/screens/SharePlace/SharePlace';
import FindPlaceScreen from './src/screens/FindPlace/FindPlace';
import PlaceDetailScreen from './src/screens/PlaceDetail/PlaceDetail';
import configureStore from './src/store/configureStore';
const store = configureStore();
// Register Screens
Navigation.registerComponentWithRedux("awesome-places.AuthScreen", () => AuthScreen, Provider, store);
Navigation.registerComponentWithRedux("awesome-places.SharePlaceScreen", () => SharePlaceScreen, Provider, store);
Navigation.registerComponentWithRedux("awesome-places.FindPlaceScreen", () => FindPlaceScreen, Provider, store);
Navigation.registerComponent("awesome-places.PlaceDetailScreen", () => PlaceDetailScreen);
// Start an App
Navigation.events().registerAppLaunchedListener(() => {
Navigation.setRoot({
root: {
component: {
name: 'awesome-places.AuthScreen'
}
}
});
});
FindPlace.js
import React, { Component } from 'react';
import { View, Text } from 'react-native';
import { connect } from 'react-redux';
import { Navigation } from 'react-native-navigation';
import PlaceList from '../../components/PlaceList/PlaceList';
class FindPlaceScreen extends Component {
Navigation.push(this, {
component: {
name: 'awesome-places.AuthScreen',
}
})
}
render () {
return(
<View>
<PlaceList places={this.props.places} onItemSelected={this.itemSelectedHandler} />
</View>
);
}
}
const mapStateToProps = state => {
return {
places: state.places.places
}
}
export default connect(mapStateToProps)(FindPlaceScreen);
Среда
- Версия React Native Navigation: 2.17.0
- Версия React Native: 0.59.4
- Платформы (iOS, Android или оба?): Android
- Информация об устройстве (Симулятор / Устройство? Версия ОС? Отладка / Выпуск?): Android 7.1.2, отладка