❄️ Хочу начать серию постов про Redux
Redux - state manager, которым я пользуюсь, как в личных проектах, так и на работе
Пробовала на практике MobX и Zustand - оба интересные, но по личному комфорту Redux у меня на первом месте 🤓
Менеджер состояний (State manager)
Что вообще такое и для чего нужен?
Это инструмент для хранения и управления состоянием приложения.
Пример состояний:
- Авторизован ли пользователь
- Открыто ли модальное окно
- Данные от сервера (например информация о пользователе и тд)
В маленьких приложениях такие данные можно хранить прямо в компонентах через useState и прокидывать дальше через пропсы
Маленькая история из жизни 🤕
На своем первом рабочем проекте я так и начала делать: просто прокидывала все состояния через пропсы в компоненты, где они были нужны.
Но проект начал разрастаться - и цепочка дошла до 10+ уровней вложенности.
Добавить новый экран или фичу - отдельная боль.
Логика дублировалась, дебажить сложно, да и вообще на код без слез не взглянешь
Спустя 3 месяца работы мы с тимлидом все же прикрутили Redux и все зарефакторили (к слову, этот проект мы переписывали с нуля раза четыре 🫠)
❕Зачем нужен Redux?
➖ Хранить состояние в одном месте
➖ Отделить бизнес логику от UI
➖ Очень легко дебажить (у редакса есть свои DevTools)
➖ Сделать состояние предсказуемым
❄️ В следующий раз расскажу более подробно про сам Redux и что там внутри!
#React #Redux
Post #92
303
- 🔥 8
- 👨💻 2