Детектор событий встряхивания React-Native с Expo

I'm using Expo v2.3.8 and Expo client v2.9.0 on iOS phone.

Я пытаюсь протестировать событие встряхивания addEventListener, но всегда открывается меню разработчика Expo. Поэтому я закрыл опцию встряхивания в Expo, но на этот раз, когда я встряхну, открывается старое меню разработчика Expo на телефоне.

Вот мой код:

import RNShake from 'react-native-shake';

export default class Starting extends Component {
    static navigationOptions = {
      title: 'MyApp',
    };

    componentWillMount() {
      RNShake.addEventListener('shake', () => {
        this.props.navigation.push('Register');
      });
    }

    componentWillUnmount() {
      RNShake.removeEventListener('shake');
    }
   .
   . 
   .
}

Я пробовал включить производственный режим. Это не сработало. Как я могу протестировать событие встряски с Expo? Детектор встряхивания React Native - https://www.npmjs.com/package/react-native-shake

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

Ответы 1

Библиотека react-native-shake требует связывания собственного кода, поэтому она не будет работать без предварительного извлечения из Expo в Expokit, как описано здесь: https://docs.expo.io/versions/latest/expokit/eject/

Из каталога вашего проекта запустите expo eject. Это загрузит необходимые зависимости и создаст собственные проекты в каталогах ios и android. Затем запустите react-native link react-native-shake в соответствии с инструкциями по установке библиотеки.

Не могли бы вы предоставить решение / краткое описание вместе со ссылкой?

Andronicus 10.02.2019 08:32

Не для меня в комментарии, отредактируйте ответ, пожалуйста :)

Andronicus 10.02.2019 11:18

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