Undefined не является объектом (оценка 'RNGuestureHandlerModule.state')

Я новичок в React-Native, и когда я пытаюсь добавить модуль навигации в свое приложение, он ломается.

  import React from 'react';
  import { createStackNavigator, createAppContainer} from 'react- 
  navigation';
  import { StyleSheet, Platform, Image, Text, View, ScrollView, 
  TextInput, Button, FlatList } from 'react-native';

  import firebase from 'react-native-firebase';

  import Todo from './Todo';


class HomeScreen extends React.Component {

constructor() {
    super();
    this.ref = firebase.firestore().collection('todos');
    this.unsubscribe = null;
    this.state = {
        textInput: '',
        loading: true,
        todos: [],
    };

}
async componentDidMount() {
  // TODO: You: Do firebase things
  // const { user } = await firebase.auth().signInAnonymously();
  // console.warn('User -> ', user.toJSON());

  // await firebase.analytics().logEvent('foo', { bar: '123'});
}

componentDidMount() {
  this.unsubscribe = this.ref.onSnapshot(this.onCollectionUpdate)
}

componentWillUnmount() {
    this.unsubscribe();
}

updateTextInput(value) {
  this.setState({ textInput: value });
}

onCollectionUpdate = (querySnapshot) => {
  const todos = [];
  querySnapshot.forEach((doc) => {
    const { title, complete } = doc.data();
    todos.push({
      key: doc.id,
      doc, // DocumentSnapshot
      title,
      complete,
    });
  });
  this.setState({
    todos,
    loading: false,
  });
}

addTodo() {
  this.ref.add({
    title: this.state.textInput,
    complete: false,
  });
  this.setState({
    textInput: '',
  });
}




render() {
  if (this.state.loading) {
    return null; // or render a loading icon
  }
  return (
    <View style = {{ flex: 1 }}>
        <Button
          title = "Go to Jane's profile"
          onPress = {() => navigate('Profile', {name: 'Jane'})}
        />
        <FlatList
          data = {this.state.todos}
          renderItem = {({ item }) => <Todo {...item} />}
        />
        <TextInput
            placeholder = {'Add TODO'}
            value = {this.state.textInput}
            onChangeText = {(text) => this.updateTextInput(text)}
        />
        <Button
            title = {'Add TODO'}
            disabled = {!this.state.textInput.length}
            onPress = {() => this.addTodo()}
        />
    </View>
  );
}

 }

 const AppNavigator = createStackNavigator({
   Home: {
    screen: HomeScreen
   }
 });

export default createAppContainer(AppNavigator);

Когда мне нужно запустить код, я получаю сообщение об ошибке

"undefined не является объектом (оценка 'RNGuestureHandlerModule.state')"

Я пробовал запустить пример кода реагирующей навигации и получил ту же ошибку.

Хотите знать, не проблема с моим файлом index.js?

import {AppRegistry} from 'react-native';
import App from './App';
import {name as appName} from './app.json';

AppRegistry.registerComponent(appName, () => App);
react-navigation теперь зависит от библиотеки react-native-gesure-handler. Вы уверены, что установили его? kmagiera.github.io/react-native-gesture-handler/docs/…
AyJay 29.11.2018 23:04

Просто дважды проверено и установлен обработчик response-native-gesture

Jake Wansink 29.11.2018 23:24
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Массив зависимостей в React
Массив зависимостей в React
Все о массиве Dependency и его связи с useEffect.
1
2
715
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Эту проблему удалось исправить:

rm -rf node_modules
npm install
npm install react-native-cli
npm install --save react-navigation
npm install --save react-native-gesture-handler
react-native link

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

Похожие вопросы

Скрипт, загруженный только на домашней странице, появляется на других маршрутах
SyntaxError: ожидаемое выражение, получено '<' вызвано Heroku Main.js после отката
Как я могу обновить страницу с помощью BrowserRouter, не получая 404 на рабочем сервере?
React - Ссылка перенаправляет на элемент, но не обновляет компонент
Как вы собираете вводимые пользователем данные и отправляете их на сервер?
Мемоизированные компоненты повторно отрисовывают свои дочерние элементы
«Невозможно прочитать свойство offsetWidth, равное null» при использовании диалогового окна пользовательского интерфейса материала
В текстовом поле Material-UI, как я могу предотвратить отставание метки от украшения, когда ввод размыт?
React, печать состояния массива и обновление состояния при нажатии кнопки
Почему я получаю два ответа, когда регистрирую свое состояние React, setState с помощью запроса API извлечения?