Неопределенный объект с RnGestureHandler при использовании реактивной навигации

Я пытаюсь реализовать встроенную навигацию в существующем приложении, которое (пока) не использует его.

Я слежу за этим ответом.

Поскольку у меня уже есть настройка приложения, мне нужно немного адаптировать его процедуру. Моя точка входа:

//index.js
import {AppRegistry} from 'react-native';
import {createAppContainer, createStackNavigator} from 'react-navigation';
import {name as appName} from './app.json';
import {Config} from './navigation/config'
import App2 from "./navigation/App2";
import BarCodeReader from "./navigation/BarCodeReader";

export const AppNavigator = StackNavigator(Config.navigation);

//I've also tried this instead, similar error:
//export const AppNavigator = createStackNavigator(Config.navigation);

AppRegistry.registerComponent('appName', ()=>AppNavigator);

Линия AppNavigator...., кажется, вызывает ошибку, в соответствии с красным экраном смерти на моем телефоне, когда я запускаю его. Это последняя строка из моего кода, которая упоминается на красном экране смерти.

Мой маршрут:

//config.js
import App2 from './App2'
import BarCodeReader from './BarCodeReader'

export const Config = {
  navigation: {
    App2: {
      screen: App2
    },
    BarCodeReader: {
      screen: BarCodeReader
    }
  }
};

Моя альтернативная страница для загрузки (например, app2 - я просто стараюсь сделать ее максимально простой, чтобы изолировать ошибку, и чтобы мой фактический код не вызывал неожиданные ошибки...)

//app2.js
import React, {Component} from 'react';
import {Text, View} from 'react-native';

export default class App2 extends Component {
  constructor(props){
    super(props);
  }

  render() {
      return (
        <View>
          <Text>          Showing stuff from app2
          </Text>
        </View>);
  }
}

Когда я запускаю его, в консоли (веб-шторм) я получаю:

D/ReactNative( 1044): CatalystInstanceImpl.runJSBundle()
D/ReactNative( 1044): ReactInstanceManager.setupReactContext()
D/ReactNative( 1044): CatalystInstanceImpl.initialize()
D/ReactNative( 1044): ReactInstanceManager.attachRootViewToInstance()
W/ReactNativeJS( 1044): Require cycle: node_modules/react-native-gesture-handler/index.js -> node_modules/react-native-gesture-handler/Swipeable.js -> node_modules/react-native-gesture-handler/index.js
W/ReactNativeJS( 1044): 
W/ReactNativeJS( 1044): Require cycles are allowed, but can result in 

uninitialized values. Consider refactoring to remove the need for a cycle.
W/ReactNativeJS( 1044): Require cycle: node_modules/react-native-gesture-handler/index.js -> node_modules/react-native-gesture-handler/DrawerLayout.js -> node_modules/react-native-gesture-handler/index.js
W/ReactNativeJS( 1044): 
W/ReactNativeJS( 1044): Require cycles are allowed, but can result in uninitialized values. Consider refactoring to remove the need for a cycle.
E/ReactNativeJS( 1044): undefined is not an object (evaluating 'RNGestureHandlerModule.State')
E/ReactNativeJS( 1044): Module AppRegistry is not a registered callable module (calling runApplication)

Это из-за цикла, о котором идет речь? Что за проблема с этим, если так? Если нет, то в чем моя проблема?

0 ответов

Это может быть полезно:

я столкнулся с проблемой -

undefined is not an object (evaluating 'RNGestureHandlerModule.State')

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

в моем случае я сделал из ^3.0.4 в ^2.18.0

Другие вопросы по тегам