Size: a a a

React Native — русскоговорящее сообщество

2020 January 15

JS

Jura Semenenko in React Native — русскоговорящее сообщество
Vetaly
Привет, в каких случаях вы используете getItemLayout ?
Из доки - "Adding getItemLayout can be a great performance boost for lists of several hundred items." Поэтому если размеры элементов списка статичные и нет ничего лишнего в сепараторах, то использую.
источник

BS

Bogdan Shelomanov in React Native — русскоговорящее сообщество
Селекторы как в цсс возможно сделать? Или тут никак
источник

GB

Gena Black in React Native — русскоговорящее сообщество
Bogdan Shelomanov
Селекторы как в цсс возможно сделать? Или тут никак
Не возможно из коробки. Не нужно, потому что будет бардак в коде и будет сложно определить что откуда берется. К примеру покопайтесь в исходниках native-base, там темы иерархические и даже в такой простой реализации это всё очень запутанно.
Я когда-то писал модуль тоже с очень простой симуляцией каскадов: https://www.npmjs.com/package/react-native-stylable, но после попытки использовать на практике отказался от этого по двум причинам: первая и главная уже озвучена выше - бардак в коде, вторая - это очень медленно если чисто на js реализовывать, надо в натив уходить, а тогда всё ещё хуже становится, потому что тогда применяться стили будут не к компонентам, а только к нативным нодам, как в DOM.
источник

BS

Bogdan Shelomanov in React Native — русскоговорящее сообщество
нормальные люди в верстке обычно делают отступы родителем, что бы елемент юзать везде и ничего не поломалось, я хз как без этого возможно верстать
источник

GB

Gena Black in React Native — русскоговорящее сообщество
Так для этого полноценный каскад не нужен, система декларативных селекторов, почти язык программирования - тоже... Это вопрос построения своего набора удобных компонентов в приложении )
источник

BS

Bogdan Shelomanov in React Native — русскоговорящее сообщество
тоесть свой набор компонентов?
источник

VP

Vitaliy Ponomarev in React Native — русскоговорящее сообщество
Gena Black
Не возможно из коробки. Не нужно, потому что будет бардак в коде и будет сложно определить что откуда берется. К примеру покопайтесь в исходниках native-base, там темы иерархические и даже в такой простой реализации это всё очень запутанно.
Я когда-то писал модуль тоже с очень простой симуляцией каскадов: https://www.npmjs.com/package/react-native-stylable, но после попытки использовать на практике отказался от этого по двум причинам: первая и главная уже озвучена выше - бардак в коде, вторая - это очень медленно если чисто на js реализовывать, надо в натив уходить, а тогда всё ещё хуже становится, потому что тогда применяться стили будут не к компонентам, а только к нативным нодам, как в DOM.
Ну не знаю, имхо, у native-base (на самом деле изначально у shoutem, NB её адаптировали и допилили, пакет так и называется native-base-shouthem-theme, если правильно помню) вполне удобно организованы стили. по крайней мере из того что я тестировал, когда мы выбирали подходящее решение.

Плюс они умеют адаптировать стили на основе boolean-свойств компонента (без каких-либо доработок логики, конкретная адаптация стиля задаётся в теме), у себя в компонентах это тоже можно реализовать достаточно просто, но тут из коробки и всё что требуется уже абстрагировано.

Но вообще да, зачастую компоненты свои у всех в итоге. Даже когда NB под капотом ))
источник

GB

Gena Black in React Native — русскоговорящее сообщество
Vitaliy Ponomarev
Ну не знаю, имхо, у native-base (на самом деле изначально у shoutem, NB её адаптировали и допилили, пакет так и называется native-base-shouthem-theme, если правильно помню) вполне удобно организованы стили. по крайней мере из того что я тестировал, когда мы выбирали подходящее решение.

Плюс они умеют адаптировать стили на основе boolean-свойств компонента (без каких-либо доработок логики, конкретная адаптация стиля задаётся в теме), у себя в компонентах это тоже можно реализовать достаточно просто, но тут из коробки и всё что требуется уже абстрагировано.

Но вообще да, зачастую компоненты свои у всех в итоге. Даже когда NB под капотом ))
Сейчас попробую измерить изменения в производительности. Мы в течение последних двух недель на проекте потихоньку избавляемся от native-base и она сейчас "островками" только осталась... в каких-то блоках Text оттуда, где-то ещё что-то... А была везде - drawer, navigation header, screen container и т.п.
В целом я бы даже остался с ней, возни меньше, но в этом проекте её умудрились начать использовать без создания кастомной темы и вся кастомизация шла через стили, что как бы убило весь смысл её использования, только мешающее поведение осталось типа невозможности избавиться от хэндлинга статусбара в хидере и т.п.

Как раз собирался оценить как что поменялось.
источник

ДИ

Дмитрий Инжеваткин in React Native — русскоговорящее сообщество
Ребят, привет, скажите пожалуйста - есть тут такие, кто подключал нативный модуль яндекс касс к приложухе?
источник

ДИ

Дмитрий Инжеваткин in React Native — русскоговорящее сообщество
или может кто нибудь знает, от чего приложение на симуляторе девайса (в моем случае - ios) может слетать и закрываться без ошибок
источник

OG

Oleg Gamega in React Native — русскоговорящее сообщество
всем привет, использую @react-native-community/slider@react-native-community/slider  для кастомного выбора времени, нужно валидировать время (не давать выбирать прошлое) на onValueChange вешаю валидацию, value не меняется но вне зависимости от этого визульно слайд отрпбатывает
источник

М

Максим in React Native — русскоговорящее сообщество
всем привет вопрос такой подключил redux но он не обновляет компонент я компонент подписал к redux через conect по клику меняю просто масив а он  не обнолвляет даже  componentDidUpdate не отрабатывает в чем может бытть причина  такого поведения??
источник

ДИ

Дмитрий Инжеваткин in React Native — русскоговорящее сообщество
Oleg Gamega
всем привет, использую @react-native-community/slider@react-native-community/slider  для кастомного выбора времени, нужно валидировать время (не давать выбирать прошлое) на onValueChange вешаю валидацию, value не меняется но вне зависимости от этого визульно слайд отрпбатывает
ну это довольно логично, onValueChange это callback на изменение
источник

I

InvalidHuman in React Native — русскоговорящее сообщество
с expo можно создать проект с тсом сразу как в cra?
источник

LM

Leonid Molchanov in React Native — русскоговорящее сообщество
Максим
всем привет вопрос такой подключил redux но он не обновляет компонент я компонент подписал к redux через conect по клику меняю просто масив а он  не обнолвляет даже  componentDidUpdate не отрабатывает в чем может бытть причина  такого поведения??
ImmutableJS в помощь ...
источник

Q

Qwe in React Native — русскоговорящее сообщество
InvalidHuman
с expo можно создать проект с тсом сразу как в cra?
Да
источник

I

InvalidHuman in React Native — русскоговорящее сообщество
Qwe
Да
как?
источник

Q

Qwe in React Native — русскоговорящее сообщество
Там консольный интерфейс
источник

Q

Qwe in React Native — русскоговорящее сообщество
И можно выбрать стартовый проект с тс
источник

I

InvalidHuman in React Native — русскоговорящее сообщество
Qwe
И можно выбрать стартовый проект с тс
блин, я в git консоли делал из-за этого у меня этот интерфейс не показывался
источник