В настоящее время я пытаюсь запустить ES6 response-native-webpack-server на эмуляторе Android. Разница в том, что я обновил свой package.json
и build.grade
для использования реакции 0.18.0
и получаю эту ошибку при загрузке. Насколько мне известно AppRegistry
, импортирован правильно. Даже если я закомментирую код, эта ошибка все равно появится. Это работает на iOS без проблем.
Что я делаю не так?
РЕДАКТИРОВАТЬ: Попробовав другие шаблоны, которые поддерживают 0.18.0, я все еще сталкиваюсь с той же проблемой.
android
react-native
webpack
Dustin
источник
источник
One of the sources for assign has an enumerable key on the prototype chain.
Ответы:
Я только что обновился до react-native
0.18.1
сегодня, и у меня возникли проблемы с зависимостями от других пользователей в0.19.0-rc
предварительной версии.Возвращаясь к вашему вопросу, я сделал
cd android
sudo ./gradlew clean
(подробнее о том, как работает clean здесь )затем вернитесь в рабочий каталог и запустите
react-native run-android
вы должны перезапустить и свой npm после этого обновления.
Надеюсь, что это работает для вас.
источник
ANDROID_HOME
на моем пути. Я также добавилlocal.properties
файл с расширениемsdk.dir=
. Любые идеи?sudo ./gradlew clean
, было бы неплохо упомянуть, что это огромная операция, которая, по-видимому, повторно загружает и переустанавливает весь дистрибутив Gradle./Users/karim/Library/Android/sdk
У меня была такая же проблема на iOS, и причиной для меня было то, что мой index.ios.js был неправильным (потому что я скопировал один из примеров, не глядя на его содержимое), он заканчивался объявлением экспорта модуля
Вместо ожидаемого
Думаю, у вас может быть такая же проблема на android с index.android.js.
источник
Одна из основных причин этой проблемы может заключаться в том, что вы установили плагин и забыли связать его .
попробуй это:
Перезапустите ваше приложение.
Надеюсь, это поможет. Пожалуйста, дайте мне знать в комментариях . Спасибо.
источник
react-native link
без имени пакета устарел и будет удален в следующем выпуске.Я решил эту проблему, просто добавив
в мой index.js
убедитесь, что он существует в вашем index.js
источник
Для меня моя проблема заключалась в неправильном вводе файла при сборке.
Я использовал App.js в качестве исходного файла, поэтому приложение не могло найти AppRegistry
Верный:
Неправильно:
источник
react-native bundle --platform android --dev false --entry-file index.js --bundle-output android /app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res
все работало, тогда как вместо этого, если я публиковал с помощью fastlane, приложение вылетало с этой ошибкой:Module AppRegistry is not a registered callable module (calling runApplication)
в build.gradle у меня, вероятно, была грязь, неправильная запись файла! Еще раз спасибо!Надеюсь, это избавит кого-то от головной боли. Я получил эту ошибку после обновления моей версии, поддерживающей реакцию. Как ни странно, это появилось только на стороне Android.
Моя файловая структура включает в себя
index.ios.js
иindex.android.js
. Оба содержат код:Что мне нужно было сделать, так это
android/app/src/main/java/com/{projectName}/MainApplication.java
изменитьindex
наindex.android
:Затем
app/build/build.gradle
изменитеentryFile
сindex.js
наindex.android.js
источник
Для меня просто перезагрузка компьютера исправила это. (Моя ошибка заключалась в том, что «модуль appRegistry не является зарегистрированным вызываемым модулем (вызывающим приложение runapplication) js engine: hermes»)
Другой важный ответ, который здесь отсутствует и который мог бы сработать, заключался в том, чтобы просто убить процессы узла:
killall -9 node
[ Модуль AppRegistry не зарегистрирован вызываемый модуль (вызывающий runApplication) ]
источник
Я не знаю почему, но когда я перемещаю AppRegistry.registerComponent из файла index.js, включенного в index.android.js, чтобы он находился непосредственно внутри index.android.js, он, похоже, работает.
источник
Если вы используете некоторые из примеров, они могут не работать
Вот моя версия для прокрутки
источник
Я удалил его на Genymotion. Затем запустите,
react-native run-android
чтобы собрать приложение. И это сработало. Обязательно попробуйте это перед запускомsudo ./gradlew clean
, это сэкономит вам много времени.источник
перезапуск упаковщика работал у меня. просто убейте реагирующий родной упаковщик и запустите его снова.
источник
если вы столкнулись с этой ошибкой в Windows с Android
откройте папку приложения в корневом каталоге и перейдите в папку Android.
снова запустите приложение, реагируйте на запуск Android
бух, это работает
источник
В моем случае я
index.js
просто ошибочно указывает на другой js вместо моего Launcher js, который не содержитAppRegistry.registerComponent()
.Итак, убедитесь, что файл вашей
index.js
точки для регистрации класса.источник
Моя проблема была исправлена путем увеличения моего inotify max_user_watches:
источник
Для меня это была проблема с зависимостью от реакции на следующую версию пакета реакции, а в моем package.json была указана старая. Обновление моей версии реакции решило эту проблему.
источник
Для меня я просто связался с реагировать на родной код следующим образом: реакция на родную ссылку
источник
npm start - --reset-cache
Вероятно, порт уже используется. Я сталкиваюсь с аналогичной проблемой, когда сначала запускаю run-android, а затем запускаю npm. Я решаю это так: сначала получите идентификатор процесса, запущенного на порту 8081: sudo lsof -i: 8081
источник
Я получил эту ошибку в Expo, потому что я экспортировал неправильное имя компонента, например
источник
Я решил эту проблему, выполнив следующие действия:
источник
Если вы используете окна машины вам нужно сделать , а
cd android
затем./gradlew clean
запуститеreact-native run-android
источник