Менеджмент состояния в React без Redux – когда хватает useReducer, useState и useContext
Автор: Александр Ламков — Friendly Frontend
Загружено: 2026-01-15
Просмотров: 113
⚡ Получить весь курс (22 урока) сразу: https://boosty.to/friendly-frontend/p...
✏️ Разберём менеджмент состояния без Redux на примере To Do List: покажу, где у нас живут данные и UI-мелочи, почему разрозненные setTasks в обработчиках опасны (устаревший снимок, лишние ререндеры), и как это чинится. Коротко объясню, что такое useReducer и зачем он нужен именно здесь. Переложим массив задач с useState на useReducer, опишем простые экшены (SET_ALL, ADD, TOGGLE_COMPLETE, DELETE, DELETE_ALL) и заменим setTasks на dispatch в addTask, toggleTaskComplete, deleteTask, deleteAllTasks. Оставим асинхронщину с сервером (tasksAPI) снаружи редьюсера: сначала ответ, потом dispatch. Почистим зависимости useCallback, чтобы обработчики не висели на tasks. Оптимизируем контекст: мемоизируем value в TasksContext через useMemo. Ускорим список: обернём TodoItem в React.memo. В конце зафиксируем простые правила — когда брать useState, когда useContext, и когда подключать небольшой useReducer. Всё — без сторонних библиотек и без ломки существующего кода.
❤️ Ранний доступ к видео и доступ к закрытому чату: https://boosty.to/friendly-frontend
🔴 Timeline:
▶ 00:00 | Введение
▶ 00:39 | Текущее состояние проекта и проблематика
▶ 03:40 | useReducer
▶ 12:48 | Оптимизация контекста
▶ 14:50 | useState, useContext или useReducer – когда что использовать
▶ 17:09 | Заключение
📚 Ссылки из видео:
➖ Код на конец урока: https://github.com/aleksanderlamkov/t...
🧑💻 Основной телеграм-канал:
https://t.me/AleksanderLamkov
💬 Коммьюнити-чат в телеграме (помощь новичкам):
https://t.me/FriendlyFrontend
🗂️ Бесплатные курсы на канале:
🟠 HTML: • HTML курс 2025
🔵 CSS: • CSS курс 2025
🟡 JS: • JavaScript курс 2025
🟢 A11y: • Accessibility курс 2025
🗺 Frontend Roadmap: • Frontend Roadmap 2024 | Что должен учить ф...
⚪️ Мастер-класс по верстке для новичков: • Адаптивная верстка сайта с нуля для начина...
🔘 Мастер-класс по верстке для продвинутых (БЭМ, SCSS): • Вёрстка сайта с 0 до результата | HTML, БЭ...
⚫️ Мастер-класс по верстке с практикой по JavaScript: • Вёрстка сайта с нуля • HTML, SCSS, JS прак...
🔴 Мастер-класс по верстке на стеке JSX, SCSS, JS, Vite, Minista (SSG), БЭМ: https://stepik.org/a/228315
📌 Автор:
➖ Личный сайт: https://aleksanderlamkov.ru/
➖ Telegram: https://t.me/AleksanderLamkov
➖ Boosty: https://boosty.to/friendly-frontend
➖ GetMentor: https://getmentor.dev/mentor/aleksand...
➖ Stepik (платные курсы и мастер-классы): https://stepik.org/a/228315
#frontend #фронтенд #react #reactjs
Доступные форматы для скачивания:
Скачать видео mp4
-
Информация по загрузке: