Кирилл
Ios, с андроидом не пробовал. Лично у меня при переходе на экран где рендерится что-то с onLayout'ом приводит к тому что эмулятор зависает. Даже ошибок не выводит
Gena
Гм... с ios я много работаю... ни разу такого не было... Были циклы релайаута, либо из-за ошибки в своем коде, либо из-за багов в RN, как например SafeAreaView - там этот компонент принципиально некорректно сделан. Но это проявлялось не как зависание, а как постоянное "дрожание" элементов на экране...
Имя
Ребята, добрый день. Знает кто как решить данную проблему? Прошел по ссылке, но там все как то абстрактно
upd: связка rn+react navigation + redux
A
коллеги, а как проверяете ошибки сети? типа действие совершить не удалось - "try again later"
Ivan
A
Gena
measure помогает, когда надо узнать что-то в конкретный момент, в частности когда протекают какие-то нативные анимации, у которых нет колбеков
Когда приходит ответ на measure, эти данные уже не соответствуют действительности, следовательно это принципиально некорректно использовать с целью узнать что-то в "конкретный момент". Поэтому я стараюсь такое вообще не использовать и пока это получалось (но да, я не делал много анимаций). Там есть ещё один ньюанс, который, похоже делает measure единственным способом работы при кастомных анимациях... сейчас смотрю вот в код... и да, onLayout возвращает данные посчитанные лэйаут движком, а measure возвращает данные о положении реальных вьюх, как раз то, что менятся при анимациях.
Andrey
ребят, а кто что использует в rn на подобии lightbox?
Миша
Stas
Кирилл
Note: The weird function signature is due to the fact that, for historical reasons, the function also accepts separate arguments as an alternative to the options object. This is deprecated due to ambiguity (y before x), and SHOULD NOT BE USED.
Хорошая все таки документация у нативки
Peter
iOS поддерживает
Ivan
ios да, android - elevation
Alexander
Ребят не подскажите какой самый стабильный router в react-native ?
Artem
Alexander
проверенный временем, надежный
Artem
Нет таких
Alexander
ну хоть такой... более менее нормальный
[object Object]
[object Object]
Vit
я использую react navigation и острую боль)
[object Object]
Alexander
Artem, Timur, Vit спасибо!
Ilya
какой вообще смысл заниматься РН, если не будет боли)
[object Object]
что такое PH?
Владимир
кто здесь?
[object Object]
Без сарказма спрашиваю
[object Object]
а, на русском что ли, я всю голову сломал)
ㅤㅤㅤㅤㅤ
как отправлять данные / сообщения с помощью сокращения?
[object Object]
[object Object]
Enter data to server? Wtf is that suppose to mean?
ㅤㅤㅤㅤㅤ
[object Object]
I want to enter data to server with redux
If you wanna send data to server, there are multiple solutions. The simpliest is 'redux thunk', but i personally prefer 'redux saga'
ㅤㅤㅤㅤㅤ
ㅤㅤㅤㅤㅤ
ㅤㅤㅤㅤㅤ
[object Object]
Aynur
native-base header потерял тень, это нормально?
Aynur
style elevation не помогает
Gena
В shadow thread работает yoga, которая осуществляет построение лэйаута исходя из RN'овских css-подобных св-тв, результатом этого процесса становятся проставленные св-ва (условно) x, y и width, height для каждой ноды, дальше эти св-ва отправляются в UI тред и реальные UI элементы перепозиционируются. Вот так, очень примерно.
Nick
сейчас систему тредов перерабатывают, емнизп
в андроиде их 4, включая render thread, который работает с android L и выше
Nick
Nick
как-то так вроде треды распределены
Nick
4й уникален для него, остальные также
tdesc
Сколько интересно уже пожалело что взялось за rn
Nick
давайте только без срача rn/flutter
Nick
fiber я слышал только ui kit, в доках по тредам такого не упоминалось 🤔
Gena
Gena
Я много времени убил пытаясь понять, как этот ворох безумного кода на самом деле работает ((
Почему, к примеру в нативе определения св-тв многих дублируются в теневую ноду и в нормальную. Почему я не могу просто взять и получить в JS ровно тот текст, что сейчас в TextInput'е... и т.д.
Gena
Или почему если вставить неудачно SafeAreaView, то всё начинает в цикле "дрожать" на экране )))
Stas
Gena
В ios специально это прописано: https://github.com/facebook/react-native/blob/0.56-stable/React/Base/RCTBridgeModule.h#L90
В Android так навскидку не скажу, но по моему тоже что-то подобное видел.
Stas
В android долгие операции(в том числе говнокод) тоже нельзя на ui потоке выполнять - получите anr
Stas
https://developer.android.com/training/articles/perf-anr
Gena
В старых версиях он в shadow-треде код модулей выполнял, сейчас создает под них свой тред под каждый.
Stas
интересно, нужно углубиться.
Stas
непонятно. будет ли это актуально с приходом fabric
Stas
если они выпилят асинхронный bridge
Gena
Там только это, для точности. Я для простоты их тредами называю, но в iOS, это dispatch queue - абстракция над тредами
Gena
Stas
там возможно один тред пул на один queue?
Stas
и все модули юзают одну queue?
Stas
хз, не шарю в ios. 0)0
Gena
К примеру, я не верю, что redux-подобные архитектуры будут хорошо работать в языках процедурных по самому своему смыслу, типа C++. Либо это будет бесконечное копирование данных из одного места в памяти в другое, что очень медленно на современных процессорах. Либо это будет бесконечный lock-contention, если ленивое копирование делать.
Stas
Gena
Ну вот если бы для реализации бриджа и нативного кодинга использовался бы hackell, или ещё что, специально для оптимизации functional-кода предназначенное, то да... можно было бы посмотреть, что получится... А с C++... в общем, не буду никого расстраивать своими ожиданиями )))
Stas
Gena
Я мало знаю про фабрик, только то, что у facebook в блоге написано и то, что здесь Валентин постил.