Ivan
но вообще мне кажется, лучше сделать render(){ if(!this.isValidProps()){ return null; } }
Что за компонент? Если это какой-то внутренний, то почему не проверить у родителя, прежде чем отрисовать его? Ну и + shouldComponentUpdate.
Владимир
валидаторы в пропсах нужны, чтобы в дев-режиме ты раньше ошибку увидел, плюс некая документация интерфейса косвенная
Egor
Как раз не увидишь ошибку
Владимир
в консоли увидишь
Ivan
Что за валидаторы в пропсах? Я что-то вообще не могу понять о чем речь)))
Egor
Надо исключения кидать или console.error
Владимир
propTypes
Egor
А проптайпс
Владимир
короче есть ассерты, а есть бизнес-логика
Egor
Имхо пропсами должен заниматься родитель
Ivan
Ну так она же не В пропсах)))
Никита
Может кто-то обошел? Нужен скрол с достаточно некоторым количеством текстовых полей с выравниванием по центру. На андроиде скрол по текстовому полю не работает https://github.com/facebook/react-native/issues/12167
Anton
Имхо пропсами должен заниматься родитель
почему родитель, если сам контрол знать должен о своих пропсах? Родитель только за счёт бизнес-логики не должен валить в компонент всякий невалидный мусор. Но если таки что-то невалидное таки провалилось - то контрол должен вежливо послать и красиво "упасть".
A
в ios target в android build variants
@potomushto подскажи пожалуйста, как в xCode настроить разные таргеты, например App1, App2, App3 и чтобы для каждого из этих приложений были dev и продакшн билды с разными идентификаторами
Dima
разные билды - это то же самое, разные таргеты, просто прописываешь разные bundle identifier
Dima
число аппов * число вариаций
Dima
да, у меня сейчас 12 приложений из 1 исходника
Дмитрий
мне казалось что это не тру вей)
Для одного названия не тру, а в моей ситуации, когда мне нужны были название, автор, организация, адрес сайта и текущая версия очень даже тру.
Dima
A
схемы, таргеты что именно нужно создавать?
Dima
если честно степень подробности зависит от знания xcode
Dima
и то, и другое
Dima
1 схема = 1 таргет
Dima
например MyApp.AppStore
Dima
и создаешь схему и таргет, прописываешь .env.myapp.production (см. readme react-native-config)
Dima
меняешь иконку и identifier, предварительно нужно будет в developer.apple.com создать
Dima
если пользуешь Fastlane match для сертификатов - заводишь и там строку и прописываешь этот сертификат
Dima
т.е. снимаешь автоматическое управление, но это если у тебя CI есть
Dima
welcome to Xcode devops
A
окей. спасибо
A
https://www.appcoda.com/using-xcode-targets/
A
@potomushto сгодится этот мануал?
Dima
да
Dan
Гайз, есть супер-специфик issue. Кто нибудь сталкивался с тем что на iphone 8 хреново работает wix/react-native-navigation? По .push эвенту происходит.. подожди-подожди.. ничего. Самый поинт в том что локально ставишь на девайс(debug/release не роляет) - все работает отлично. Хрень на подсосавшемся бандле из codepush. Все остальные девайсы - проблем нет, вместе с Iphone 8 симулятором.
Alexsandr
Хватит внедрять graphql, во все что двигается)
Alexsandr
Это хороший инструмент, но как и всегда не ультимативный.
Alexsandr
И пытаться его впихнуть везде себе дороже
Alexsandr
Да, согласен)
Alexsandr
Я все хочу ее потрогать, но пока времени нет)
Yura
Всем привет, а для react native тоже есть create-react-app? и поскажите плиз хорошые видео с настройкой как тестить с емулятором ...
Ololo
documentation?
Anonymous
гайз а есть какой фикс для использования node core модулей нормально ? не через browserify.
Maxim 📱 D
Есть вариант получения текущего env приложения для тестов на jest? Я хочу как то компактнее эту проверку сделать typeof process !== 'undefined' && process.env && process.env.NODE_ENV != 'test'
Maxim 📱 D
тип в глобальные переменные куда то засунуть, чтобы без импорта работало
Cyril
Ребят, привет! Вопрос такой: можно ли сделать динимичую смену цветовой палитры без вот такой шляпы: <Text style={{ color: typeof null === 'object' ? 'red' : 'blue' }}>Yoba, allo</Text>? По рекомендациями обычно все стили выносятся в константу, которая отделена от класса компонента, а парсятся стили до запуска root-компонента обычно. Писать костыль global.currentTheme или есть какое-нибудь более элегантное решение?
Cyril
Стилей очень много.
Cyril
Отличаться они будут цветами только. В зависимости от "темы".
Aleksei
в SC интересная поддержка тем
Cyril
Да, вижу. Спасибо)
Aleksei
SC - это что?
styled components
Rinat
кто нибудь сталкивался с необходимостью кропа рич текста построчно?
Артём
Да
Rinat
Да
каким образом решали задачу не подскажите?
A
кто-нибудь сталкивался с такими "вопросиками"?
A
понятно: It's the file untracked by source control.
A
ага
A
@potomushto , а как ты константы для разных приложений создаёшь? через Prerpocessor Macros?
Dima
да, и react-native-config
A
https://medium.com/@ywongcode/building-multiple-versions-of-a-react-native-app-4361252ddde5
A
вот ещё вариант, только тут всё делают в одном таргете
Nikita
Всем шалом! Был ли у кого-нибудь опыт перевода уже существующего аппа под Expo? Вроде всё выполнил верно, запускаю через Expo XDE, но в Expo Client (на iOS) всё тормозится на 100% загрузки бандла, а потом выкидывается апп.
Nikita
Версии RN: 0.51.0 Expo: 24.0.2
Peter
Версии RN: 0.51.0 Expo: 24.0.2
25ю версию пробуй, 24я глючная была
A
да, и react-native-config
получается будет .env.app1 и .env.app2 в случае двух приложенией, так?
Nikita
25ю версию пробуй, 24я глючная была
Когда запускаю под 25-ой, то ошибка: Metro Bundler has encountered…
Nikita
При этом в консоли XDE нет ошибок
Peter
При этом в консоли XDE нет ошибок
а package.json увидеть можно?
Nikita
Весь или позиции по RN, R и expo?
Nikita
"expo": "^25.0.0", "react": "16.2.0", "react-native": "https://github.com/expo/react-native/archive/sdk-25.0.0.tar.gz",
A
@potomushto И ты собираешь все через консоль? Fastlane используешь?
Maxim 📱 D
Кто нибудь знает как пофиксить ошибку при сборке в ci? Jest не понимает теги реакт натива при запуске в ci что ли