Реактивный детектор событий Shake с экспо - PullRequest
0 голосов
/ 11 ноября 2018

Я использую Expo v2.3.8 и Expo client v2.9.0 на телефоне iOS.

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

Вот мой код:

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');
    }
   .
   . 
   .
}

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

1 Ответ

0 голосов
/ 10 февраля 2019

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

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

...