Alexander
http://get.udid.io/ через вот это
Alexander
Может лишняя инфа, но у меня много времени заняло чтобы дойти до этого
Vladimir
А подскажите, коллеги, можно ли в нативном модуле (без ViewManager), заинфлейтить реактовские вьюхи? То есть передать, например строкой, названия классов и через рефлексию или другую магию создать нужные объекты?
Vladimir
Речь про андроид.
Vladimir
У меня есть пара мыслей на этот счет, но хочется убедиться что нет готовых велосипедов.
Aleksei
Vladimir
не принципиально, ReactImageView, ReactTextView
Vladimir
я не думаю что подход будет отличаться кардинально от конкретики
Aleksei
а в чем конкретно вопрос? про передать строку или про то как заинитить?)
Vladimir
NativeModules.Module.show(
"ReactView",
"ReactView"
)
Vladimir
Aleksei
вот про бридж был живым не понял)
Vladimir
ну чтобы эвенты и колбэки гуляли как будто я их просто в рендере описал
Aleksei
они там вроде как то по тэгам цепляются
Aleksei
что то типа id-ка выдается
Vladimir
то есть когда мы их описываем в JS, их инициализирует RN, нативные модули, насколько я понимаю, не подразумевают комплексных лэйаутов и предполагают атомарный интерфейс.
Vladimir
Vladimir
хочется что-нибудь простого, как в JS цепляются нативные модули через require
Vladimir
тоже самое но с обратной стороны
Vladimir
в голову приходит инициализация через соответствующий менеджер
Aleksei
если для ios кину норм будет?
Vladimir
Но создание рандомного менеджера мне не видится простой задачей
Vladimir
Aleksei
https://github.com/savelichalex/Souptitle/blob/master/apps/mobile/ios/STTableView.m#L69
https://github.com/savelichalex/Souptitle/blob/master/apps/mobile/ios/STTableView.m#L132
https://github.com/savelichalex/Souptitle/blob/master/apps/mobile/ios/STTableView.m#L144
Код почти весь не мой, по мотивам статьи давно давно писал)
Vladimir
Aleksei
а вот про инстансы это уже надо смотреть)
Vladimir
С эвентами все более или менее понятно. С созданием инстансов - такое ощущение что я хочу странного и фреймворк не подразумевает такое поведение.
Aleksei
ну на самом деле мне тоже интересно зачем вам это 🙂
엑시
они по партнерке написали какой-то модуль на RN и усе
엑시
далековато от реальности
엑시
особенно скайп палево
Aleksei
лол, скайп на RN
Vladimir
Vladimir
Есть такая забавная вьюха. Сделана нативным модулем, потому что у меня нет идей как это сделать нормально на реакте. Нужно добавить на место черного пространства кучу реактовских вьюх. Отсюда вопрос.
Vladimir
То есть нужно заинфлейтить туда что-то вида
export const Content = () => (
<View style={{height, width}}>
<Playlist videoId="abc" />
</View>
);
передав имя константы
Aleksei
а есть кстати возможность емнип чилдренов пробрасывать в нативный модуль
Aleksei
в том коде что я скидывал так и работает
엑시
ios там нейтив
엑시
думал что нашел Verb - тако они тока айос на рекат оставили https://habrahabr.ru/post/335354/
Aleksei
только на ведре
они вообще react-xp делали чтобы везде был одинаковый код
Vladimir
То-то он в 5 фпс
это, как показывает практика, проблема имплементации, а не технологии
Vladimir
я далеко не фанат RN, но в конечном итоге весь UI, упирается в нативный код и если там 5 фпс, то кто же им доктор
Aleksei
а почему не через компонент сделать?)
Aleksei
есть еще вариант зарегистрировать в AppRegistry
Vladimir
потому что компонент кладется в иерархию реактовских вьюх, мне нужно что моя вьюха всегда была на вершине иерархии и не блокировала нижлежащие. Я не нашел ни одной имплементации навигации, которая бы позволяла это делать.
Vladimir
в лучшем случае - модальное окно с новой, прозрачной, активити внутри, что совсем плохо в случае андроида
Vladimir
работать с фрагментами и строить навигацию внутри них реакт не умеет, насколько мне известно
Vladimir
а писать собственную навигацию для одного кейса это оверкилл, как мне кажется
Vladimir
хотя с точки зрения задачи очень верный вариант
Vladimir
엑시
Yandex Market на RN ?
엑시
на iOS
Vladimir
👍
엑시
엑시
яндексоиды косвенно подтверждают
엑시
엑시
это с 5й версии которую полгода назад выпустили
Aleksei
ну я так, пытаюсь разные варианты перебрать
Vladimir
посмотрю и в эту сторону, спасибо
Phil
я открыл RN проект в xcode где найти код главного экрана логику транспелированую в нативный код
Ilya
Phil
а я туплю прост мож
Phil
а как мутить нэйтив компоненты
Phil
если мне нужно чтот очень сложное
Vladimir
если мне нужно чтот очень сложное
https://facebook.github.io/react-native/docs/native-modules-ios.html
https://facebook.github.io/react-native/docs/native-components-ios.html
Alexey
Забавно, мы дотыкались с навигейшеном до того, что я решил для нас написать небольшое решение типа виксовского. Так вот, вы можете через AppRegistry инициализировать отдельные вьюги и потом их маунтить параллельно
Alexey
Выглядит как два приложения в одном :)
Vladimir
Alexey
Vladimir
Ок, спасибо