#react-native
#react-native
Вопрос:
В основном я люблю React Native. Я использую его с 0.22. В настоящее время на 0.35.
Но почему связывание собственных библиотек действует как лотерея? Я редко заставляю его работать с первого раза, и то, что ломается, часто является совершенно разными вещами.
Каждое обновление RN — это лаваш. Вот что я обычно делаю:
- npm i react-native@0.35
react-native upgrade
(отвечайте «да» на каждый вопрос для замены файлов)- вставьте мои данные в info.plist (они были заменены ..)
- переустановите модули
- повторно свяжите все собственные модули
- задерживаю дыхание и пытаюсь
react-native run-ios
В большинстве случаев вышеуказанное не работает. Но это работает, когда я компилирую приложение из XCode.
Путь отсюда до рабочего run-ios
часто бывает долгим и разочаровывающим. Это включает в себя следующее:
- разблокируйте все собственные модули с
react-native unlink xyz
- вручную удалите пути поиска заголовка, которые не удаляла отсылка
rm -rf node_modules
yarn
- продукт / очистка из XCode
- установите модули
- связать собственные модули
Иногда вышеупомянутое работает. В основном это не работает. Обычно некоторые собственные модули попадают в раздел ошибок сборки при запуске из react-native run-ios
. Запуск из XCode работает как обычно.
Собственные модули, попадающие в раздел ошибок, не всегда одинаковы. У меня также были некоторые собственные модули, «отправленные» с ошибкой RN. (RCTGeolocation, RCTActionSheet, RCTWebSocket)
Следующий «уровень» решения (когда я не могу заставить вышеупомянутое работать) — это:
react-native init nextAppAttempt
- скопируйте код, активы, .babelrc и т.д. В новую папку
yarn
- свяжите все модули
- установите модули
Я добился некоторого успеха с вышеупомянутым, но у меня есть идея переименовать приложение на настоящее имя и повторно подключиться к моему репозиторию GitHub.
Вот собственные модули, которые я связываю:
react-native link react-native-fs amp;amp;
react-native link react-native-camera amp;amp;
react-native link react-native-code-push
react-native link react-native-permissions amp;amp;
react-native link react-native-image-resizer amp;amp;
react-native link react-native-mixpanel amp;amp;
react-native link react-native-maps amp;amp;
react-native link react-native-svg amp;amp;
-
В чем здесь дело?
-
Работает ли это для других?
-
Есть ли недостатки в моем процессе? (Я надеюсь на это)
Комментарии:
1. Не совсем связано, но я утверждаю, что мне всегда нужно запускать
react-native run-ios
несколько раз, прежде чем ошибка «Нет URL-адреса пакета» исчезнет.2. Черт возьми, может кто-нибудь показать мне здесь какие-нибудь огни. действительно неприятные проблемы
Ответ №1:
У меня не было ни одной из вышеперечисленных проблем в течение нескольких месяцев. Я полагаю, это связано с одним из недавних обновлений RN. Сегодня я обновился с 0.45 до 0.47 без каких-либо проблем.
Может быть, что-то исправлено в RN, и эти проблемы исчезли? Я очень надеюсь на это.