Ruslan
А как только начал использовать в проекте сразу повалилось
Ruslan
С pods очень плохо знаком
Ruslan
И нормально ли, что у меня при pod install вот такой список установленного появился? Analyzing dependencies Downloading dependencies Using BoringSSL (10.0.6) Using Firebase (5.15.0) Using FirebaseAnalytics (5.4.0) Using FirebaseAuth (5.2.0) Using FirebaseAuthInterop (1.0.0) Using FirebaseCore (5.1.10) Using FirebaseDatabase (5.0.4) Using FirebaseFirestore (0.16.1) Using FirebaseInstanceID (3.3.0) Using GTMSessionFetcher (1.2.1) Using GoogleAppMeasurement (5.4.0) Using GoogleUtilities (5.3.7) Using Protobuf (3.6.1) Using gRPC-C++ (0.0.5) Using gRPC-Core (1.14.0) Using leveldb-library (1.20) Using nanopb (0.3.901) Generating Pods project Integrating client project Sending stats Pod installation complete! There are 4 dependencies from the Podfile and 17 total pods installed.
Gena
В общем из того, что надо знать про cocoapods (это позволит понять что у вас происходит): - После pod install проект надо запускать и открывать только через .xcworspace файл - существует две схемы использования cocoapods с RN: 1. RN встроен по стандартной схеме, как subproject в основном проекте. В этом случае, все модули для него надо линковать так же (через react-native link или вручную добавлять в проект). Через Podfile можно менеджерить только не связанные с RN библиотеки. Это, насколько я помню, как раз метод интеграции описанный в доках по react-native-firebase. 2. RN встроен тоже через cocoapods. В этом случае всё надо прописывать в Podfile. Это более сложный метод и он чаще всего означает отказ от react-native link. Если вы ставили cocoapods по их инструкции, то вам надо действительно через cocoapods интегрировать firebase и открывать воркспейс, а не проект. Но помимо этого, надо ещё слинковать сам модуль react-native-firebase
Ruslan
Из  xcode тоже крашит приложение
Gena
Из  xcode тоже крашит приложение
У вас скорей всего сам react-native-firebase не слинкован
Ruslan
В общем из того, что надо знать про cocoapods (это позволит понять что у вас происходит): - После pod install проект надо запускать и открывать только через .xcworspace файл - существует две схемы использования cocoapods с RN: 1. RN встроен по стандартной схеме, как subproject в основном проекте. В этом случае, все модули для него надо линковать так же (через react-native link или вручную добавлять в проект). Через Podfile можно менеджерить только не связанные с RN библиотеки. Это, насколько я помню, как раз метод интеграции описанный в доках по react-native-firebase. 2. RN встроен тоже через cocoapods. В этом случае всё надо прописывать в Podfile. Это более сложный метод и он чаще всего означает отказ от react-native link. Если вы ставили cocoapods по их инструкции, то вам надо действительно через cocoapods интегрировать firebase и открывать воркспейс, а не проект. Но помимо этого, надо ещё слинковать сам модуль react-native-firebase
а второй способ это если react-native уже к нативному коду интегрируется или необязательно?
Gena
а второй способ это если react-native уже к нативному коду интегрируется или необязательно?
Второй способ отличается только тем, как линкуется сам RN и его модули... (но ещё раз, он сложнее) Я пронего на SO писал когда-то: https://stackoverflow.com/a/48044426/2266462
Vitaliy
Из  xcode тоже крашит приложение
Если открыть файл ios/<APP_NAME>/project.pbxproj любым текстовым редактором (т.е. не в виде проекта XCode а как обычный текст) поиск по "react-native-firebase" что-нибудь находит? если нет - 100% не слинкован.
Gena
Во! Классный совет!
Vitaliy
Нашлись совпадения
Тогда по первому варианту вряд ли смогу что-то еще сказать. У меня как раз через поды всё прикручено.
Ruslan
буду пробовать с нуля по порядку
Alexander
Сорри, что сюда. Может кто поможет Использую react-router-dom + react-router-config Делаю mount(Router) enzyme. В роутах есть вызов функции renderChild, которая просто является оберткой над renderRoutes из react-native-config. При тестах вылазит ошибка node_modules/jsdom/lib/jsdom/virtual-console.js:29 TypeError: renderChild is not a function В чем может быть проблема?
Ruslan
может что пропустил
Ruslan
всем спасибо большое
Gena
Нашлись совпадения
В общем это хуже (потому что ещё теперь придется разбираться что там написано). Я предлагаю сделать так: - откатиться на состояние до сетапа react-native-firebase сделать ещё раз строго по их инструкции: - firebase через cocoapods (пункт 1): https://rnfirebase.io/docs/v5.x.x/installation/ios#1.-Firebase-Installation - react-native-firebase через react-native link (пункт 2): https://rnfirebase.io/docs/v5.x.x/installation/ios#2.-React-Native-Firebase-Installation-Recommended-installation
Vitaliy
Сорри, что сюда. Может кто поможет Использую react-router-dom + react-router-config Делаю mount(Router) enzyme. В роутах есть вызов функции renderChild, которая просто является оберткой над renderRoutes из react-native-config. При тестах вылазит ошибка node_modules/jsdom/lib/jsdom/virtual-console.js:29 TypeError: renderChild is not a function В чем может быть проблема?
А если попробовать распечатать renderChild - console.warn(renderChild) - строкой выше вызова, там будет undefined ? если да - 99,9% что какая-то проблема с резолвингом путей при импорте функции. скорее всего (по тем ситуациям, что у меня были) - либо циклические импорты - либо где-то в конфиге jest заигнорирован путь к модулю, из которого должен быть сделан импорт
Vitaliy
Папка с тестом лежит в папке navigation функция renderChild там же
Эту обертку можно как-то временно исключить? Проверить как будет если использовать renderRoutes без обертки? Если заработает или ошибка пропадет - скорее всего проблема с импортами именно в обертке.
Alexander
А, нет
Alexander
Почему-то только в корневом роуте такая фигня
Vitaliy
Осталось понять, почему по снапшоту в пропсах прилетает routes, где у каждого компонента undefined
скорее всего та же причина - циклические зависимости. https://stackoverflow.com/questions/46589957/es6-modules-and-circular-dependency Какие именно - сказать сложно. Могу только подсказать чем сам пользовался для разруливания. https://www.npmjs.com/package/madge > $ madge --circular затем пройтись по полученному списку и найти способы, как это развязать.
Alexander
Мне кажется это просто react-router-config конный. Не зря он в бете
Vitaliy
√ No circular dependency found!
🤔 тогда даже не знаю. Я бы может еще протестировал с одним роутом и самым простым компонентом, без локальных импортов и т.п. - посмотрел что будет в снапшоте. Но это всё, что в голову приходит. 🤷‍♂️
Max
Max
Что-то беда с запуском демо проекта, вроде все запускается, но не видит нифига, что можно попробовать сделать еще?)
Max
Vitaliy
https://stackoverflow.com/questions/3152681/android-emulator-5554-offline похоже на вот этот случай
Dmitry
народ
Dmitry
есть такой кейс
Dmitry
вложенная структура элементов внутри SectionList. Каждый итем содержкт в себе маппинг вложенных итемов, которые тоже содержат на своем уровне маппинг итемов
Dmitry
получается такой большой список
Dmitry
и есть фильтр данных, при фильтре скрываются все корневые итемы
Dmitry
и соответсвенно возвращаются обратно при снятии фильтра
Dmitry
сейчас это может занимать до 1с
Dmitry
какие есть варианты это ускорить?
Rinat
ребят? попробовал новый апп с expo забустрапить. почему 15 мб пустой apk?
Nikita
и expo
Rinat
ад. как-то можно уменьшить? что они там делают) такого не было с crna)
Vlad
Ребята поделитесь каналами телеграм где можно постить вакансии Реакт/ реакт нейтив удаленная работа
Vlad
добро пожаловать в мир RN
Я умер со смеху!!)) Еще одна жертва бриджа Джи Эс)
Dmitry
ребят? попробовал новый апп с expo забустрапить. почему 15 мб пустой apk?
Поверь, это еще мало. Когда я сбилдил пустой App на delphi firemonkey там было около 50 метров
Aynur
раньше Экспо проекты всегда весили под 30-40 пустые😕
Pasha
Тем временем в проде уже висит проект < 10мб с чатиком, новостями и прочим подобным. Потому что просто RN, без всяких expo и т.д.
Gena
Ааааа.... я нашел вот такое в глубине RN хэндлинга тачей!!! /** * Position does not expose methods for construction via an `HTMLDOMElement`, * because it isn't meaningful to construct such a thing without first defining * a frame of reference. * * @param {number} windowStartKey Key that window starts at. * @param {number} windowEndKey Key that window ends at. */ function Position(left, top) { this.left = left; this.top = top; } Position.prototype.destructor = function() { this.left = null; this.top = null; }; PooledClass.addPoolingTo(Position, twoArgumentPooler);
Gena
Если что, это вот отсюда: https://github.com/facebook/react-native/blob/0.58-stable/Libraries/Components/Touchable/Position.js
Dmitry
@gblack9 мир на грани разлома
Eli
всем привет
Eli
при обновлении RN генерирует странное имя проекта.
Eli
Можно ли в app.json как-либо задать его?
Dmitry
нука
Eli
Например в поле name?
Dmitry
тебя интересует отображаемое имя под иконкой? ТОгда это displayName
Eli
не
Eli
есть проект на 54ой версии
Eli
я обновляю до 57
Dmitry
я просто не помню проблем с неймингом
Eli
он генерирует path файл, с неправильным именем уже существующего проекта.
Eli
У меня приложение называется допустим Hello World, он генерирует xcode проект Hello-World, хотя уже существует в папке ios проект HelloWorld.
Eli
попрбую name сменить ;)
Gena
@gblack9 мир на грани разлома
Я про документацию... Ну зачем её вообще писать, если код самодокументируется лучше (в данном случае)... А ещё задумался про этот пулинг... насколько вообще его оправдано применять для структуры из двух числовых полей... Надо у знакомых игроделов поинтересоваться, они там на этом "собаку съесть" должны были по идее...
B
Всем привет. Народ, вы использовали библиотеку react-native-image-crop-picker. При вызове гл. метода openPicker вызывает ошибку: undefined is not an object
Andrey
Добрый день коллеги. Хочу узнать по поводу RN. Тени для андройд возможны только картинками? регулируемых теней нет вообще?
Andrey
Andrey
Или её вообще нет
Vitaly
Кто-нибудь знает какой-нибудь нормальный html редактор для RN?