допустим useState состояние и его сетСтейт,как docs={docs} и setDocs={setDocs} в разные компоненты?(или есть альтернативы?)
Стейт менеджеры
контекст
useContext()
да уже есть редакс, но вроде в него ложат только глобальные состояния, а у меня что-то типо состояния для модалок
уже есть редакс, но не хочется все в него пихать
уже есть редакс, но не хочется все в него пихать, там проброс стейта для модалки
я не про редакс, а про реактовский стейтменеджмент, который юзают вместе с useContext
Да
Ну смотря какая вложенность Либо перебрасывать Либо Redux Либо Context Или же localStoreg, что я не рекомендую
спасибо, а как научиться различать что отнести к бизнес логике, а что к локальной?( в каком случае стейт писать в комопненте, а в каком случае пробрасывать?)
Если допустим у тебя useState нужен в дочерней компоненте, то через пропс, если нужно 2 раза прокидывать, то ты уже смотришь на сколько сложная дочерняя компонента, на сколько она важная, и сильно ли будет бить по производительности при ее перерендере, если нет, то через пропс норм будет, если да то лучше через context/redux
ну, я обычно контекст юзаю для одной страницы, к примеру, где у меня куча всего, а на других страницах мне данная инфа не нужна, и сувать это в редакс смысла нет
спасибо, просто хотел что-то сделать с этим говнокодом))
так а шо делать, там страница супер нагружена логикой, только модалок штук 10( я не знаю куда их девать эти стейты для них
Вот проблема - типы умеют в реакт , не умеют в архитектуру
как найти выход? переписать на конетекст? вынести в кастомные хуки?(
ебануться что это
Твоя проблема видимо в том, что ты в одном компоненте все сделал
Я бы вынес в отдельные компоненты
Что то типо Модалка 1 Модалка 2 И вставлял их уже туда
ну стейты то для них в этом же компоненте остались бы?
Ниче не делать. Это я писал, всё норм работает.
Нет под каждую модалку отдельный стейт, с открытием остаетсья в родительской
Напомнило 1 курс ассемблера - работает? Не трогай
У нас тип использовал портал для этого
Обсуждают сегодня