Size: a a a

2019 July 02

VS

Vladimir Sedikh in React Kyiv
Vlad
ребята, такой вопрос - есть context, в нём стэйт - объект с массивом и методами для обновления этого массива. методы используются в consumer-ах. при каждом обновлении стэйта этими методами, consumer-ы ре-рендерятся. можно ли как-то предотвратить ре-рендеринг consumer-ов?
попробуй вынести логику из представления
например в какой то глобальный обьект или стор
источник

MK

Max Kovalenko in React Kyiv
господа, есть интересный вопрос по поводу использования контекста вместо редакса….. стейт всего приложения хранится в стейте корневого элемента, при обновлении этого стейта перерисовывается (исходя из идей реакта) все дерево компонентов что естественно ничерта не оптимально. Вопрос - почему интернет гудит  по поводу того что Контекст АПИ может послужить альтернативой редаксу?
источник

MV

Max Vashchenko in React Kyiv
Max Kovalenko
господа, есть интересный вопрос по поводу использования контекста вместо редакса….. стейт всего приложения хранится в стейте корневого элемента, при обновлении этого стейта перерисовывается (исходя из идей реакта) все дерево компонентов что естественно ничерта не оптимально. Вопрос - почему интернет гудит  по поводу того что Контекст АПИ может послужить альтернативой редаксу?
так якщо ти редакс юзаєш у тебе теж все ре-рендериться
источник

SG

Stas G in React Kyiv
Max Kovalenko
господа, есть интересный вопрос по поводу использования контекста вместо редакса….. стейт всего приложения хранится в стейте корневого элемента, при обновлении этого стейта перерисовывается (исходя из идей реакта) все дерево компонентов что естественно ничерта не оптимально. Вопрос - почему интернет гудит  по поводу того что Контекст АПИ может послужить альтернативой редаксу?
потому что при использовании контекст апи стейт всего приложения не кладут в топ-левел компонент
источник

MK

Max Kovalenko in React Kyiv
Max Vashchenko
так якщо ти редакс юзаєш у тебе теж все ре-рендериться
не все… а только те компоненты у которых меняются пропсы
источник

MK

Max Kovalenko in React Kyiv
Stas G
потому что при использовании контекст апи стейт всего приложения не кладут в топ-левел компонент
а где он обычно располагается?
источник

SG

Stas G in React Kyiv
в тех частях UI, где нужен тот или иной стейт
источник

SG

Stas G in React Kyiv
только общие части выносятся наверх
источник

SG

Stas G in React Kyiv
ну и + есть техники для мемоизации и оптимизации некоторых вещей, вчера здесь обсуждали
источник

MK

Max Kovalenko in React Kyiv
а какой смысл тогда контекста если можно отдельные кусочки данных хранить там где надо?
источник

SG

Stas G in React Kyiv
меньше бойлерплейта по сравнению с редаксом
источник

MK

Max Kovalenko in React Kyiv
может кто подскажет хороший ресурс с описанием построения архитектуры на контексте?
источник

MV

Max Vashchenko in React Kyiv
Max Kovalenko
не все… а только те компоненты у которых меняются пропсы
увімкни цю галочку в react devtools і перевір 😁
источник

MK

Max Kovalenko in React Kyiv
Max Vashchenko
увімкни цю галочку в react devtools і перевір 😁
включал галочку ))) и даже консоль логом в рендер методе проверял )))
источник

SG

Stas G in React Kyiv
Max Vashchenko
увімкни цю галочку в react devtools і перевір 😁
редакс обновляет только те части, которые подписаны на него
источник

MK

Max Kovalenko in React Kyiv
если бы перерисовывалось все дерево компонентов то смысла бы не было в редаксе )
источник

MV

Max Vashchenko in React Kyiv
Stas G
редакс обновляет только те части, которые подписаны на него
так, я мав на увазі ті що законекчені
источник

MK

Max Kovalenko in React Kyiv
@weisscracker а был опыт построения приложения на контексте? есть ли смысл уходить от редакса при учете того что никакие мидлвари не планирую юзать
источник

SG

Stas G in React Kyiv
был, правда больших приложений пока не писал. но в целом опыт положительный.
просто создаем контексты по "фичам" , а в топ-левел храним минимум, типа информации о пользователе
источник

MK

Max Kovalenko in React Kyiv
с апишками удобно работать из компонентов?
источник