Добавить
Уведомления

Кастомные хуки в React: как выносить логику в отдельные функции

⚡ Получить весь курс (22 урока) сразу: https://boosty.to/friendly-frontend/posts/08f4cd01-a7ce-4e5b-8055-88aa401c7808 ✏️ Продолжаем улучшать архитектуру нашего To Do List. Покажу, как вынести бизнес-логику работы с задачами из контекста в отдельный кастомный хук useTasks. Создадим хук с нуля, перенесём в него стейт, обработчики и фильтрацию, подключим в контекст. Затем декомпозируем код дальше: создадим отдельный хук useIncompleteTaskScroll для прокрутки к первой невыполненной задаче и useTasksLocalStorage для работы с LocalStorage. Разберём, зачем дробить логику на хуки и как это помогает масштабировать проект. Закрепим всё на практике и сравним, насколько чище стал код после рефакторинга. ❤️ Ранний доступ к видео и доступ к закрытому чату: https://boosty.to/friendly-frontend 🔴 Timeline: ▶ 00:00 | Введение ▶ 00:39 | Что такое кастомный хук ▶ 02:26 | Анализ текущего кода и создание кастомного хука useTasks ▶ 04:47 | Создание дополнительного хука useIncompleteTaskScroll ▶ 07:33 | Создание дополнительного хука useTasksLocalStorage ▶ 12:20 | Архитектура и масштабирование хуков ▶ 14:02 | Заключение 📚 Ссылки из видео: ➖ Код на конец урока: https://github.com/aleksanderlamkov/todo-react/tree/59edb5ac16def54412552999e7f701af890bc4ee 🧑💻 Основной телеграм-канал: https://t.me/AleksanderLamkov 💬 Коммьюнити-чат в телеграме (помощь новичкам): https://t.me/FriendlyFrontend 🗂️ Бесплатные курсы на канале: 🟠 HTML: https://youtube.com/playlist?list=PL0MUAHwery4ot0KmgGxlBSB7rXssLeA6h 🔵 CSS: https://youtube.com/playlist?list=PL0MUAHwery4o9I7QQVj_RP4ZVpmdx6evz 🟡 JS: https://www.youtube.com/playlist?list=PL0MUAHwery4qn4Y27iUxmzC-JiauX7vSL 🟢 A11y: https://youtube.com/playlist?list=PL0MUAHwery4r4gCA3AOtHgArM_UOb2QUV 🗺 Frontend Roadmap: https://youtu.be/1WRJKgwlX9w ⚪️ Мастер-класс по верстке для новичков: https://www.youtube.com/playlist?list=PL0MUAHwery4rqkzKF1mDBCIH_eZgjY6uN 🔘 Мастер-класс по верстке для продвинутых (БЭМ, SCSS): https://www.youtube.com/playlist?list=PL0MUAHwery4rdZt-8E9p9zty2ZUCH6Ai3 ⚫️ Мастер-класс по верстке с практикой по JavaScript: https://youtu.be/hkYzqTKnSIg 🔴 Мастер-класс по верстке на стеке 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/aleksandr-lamkov-1480 ➖ Stepik (платные курсы и мастер-классы): https://stepik.org/a/228315 #frontend #фронтенд #react #reactjs

12+
35 просмотров
8 дней назад
28 ноября 2025 г.
12+
35 просмотров
8 дней назад
28 ноября 2025 г.

⚡ Получить весь курс (22 урока) сразу: https://boosty.to/friendly-frontend/posts/08f4cd01-a7ce-4e5b-8055-88aa401c7808 ✏️ Продолжаем улучшать архитектуру нашего To Do List. Покажу, как вынести бизнес-логику работы с задачами из контекста в отдельный кастомный хук useTasks. Создадим хук с нуля, перенесём в него стейт, обработчики и фильтрацию, подключим в контекст. Затем декомпозируем код дальше: создадим отдельный хук useIncompleteTaskScroll для прокрутки к первой невыполненной задаче и useTasksLocalStorage для работы с LocalStorage. Разберём, зачем дробить логику на хуки и как это помогает масштабировать проект. Закрепим всё на практике и сравним, насколько чище стал код после рефакторинга. ❤️ Ранний доступ к видео и доступ к закрытому чату: https://boosty.to/friendly-frontend 🔴 Timeline: ▶ 00:00 | Введение ▶ 00:39 | Что такое кастомный хук ▶ 02:26 | Анализ текущего кода и создание кастомного хука useTasks ▶ 04:47 | Создание дополнительного хука useIncompleteTaskScroll ▶ 07:33 | Создание дополнительного хука useTasksLocalStorage ▶ 12:20 | Архитектура и масштабирование хуков ▶ 14:02 | Заключение 📚 Ссылки из видео: ➖ Код на конец урока: https://github.com/aleksanderlamkov/todo-react/tree/59edb5ac16def54412552999e7f701af890bc4ee 🧑💻 Основной телеграм-канал: https://t.me/AleksanderLamkov 💬 Коммьюнити-чат в телеграме (помощь новичкам): https://t.me/FriendlyFrontend 🗂️ Бесплатные курсы на канале: 🟠 HTML: https://youtube.com/playlist?list=PL0MUAHwery4ot0KmgGxlBSB7rXssLeA6h 🔵 CSS: https://youtube.com/playlist?list=PL0MUAHwery4o9I7QQVj_RP4ZVpmdx6evz 🟡 JS: https://www.youtube.com/playlist?list=PL0MUAHwery4qn4Y27iUxmzC-JiauX7vSL 🟢 A11y: https://youtube.com/playlist?list=PL0MUAHwery4r4gCA3AOtHgArM_UOb2QUV 🗺 Frontend Roadmap: https://youtu.be/1WRJKgwlX9w ⚪️ Мастер-класс по верстке для новичков: https://www.youtube.com/playlist?list=PL0MUAHwery4rqkzKF1mDBCIH_eZgjY6uN 🔘 Мастер-класс по верстке для продвинутых (БЭМ, SCSS): https://www.youtube.com/playlist?list=PL0MUAHwery4rdZt-8E9p9zty2ZUCH6Ai3 ⚫️ Мастер-класс по верстке с практикой по JavaScript: https://youtu.be/hkYzqTKnSIg 🔴 Мастер-класс по верстке на стеке 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/aleksandr-lamkov-1480 ➖ Stepik (платные курсы и мастер-классы): https://stepik.org/a/228315 #frontend #фронтенд #react #reactjs

, чтобы оставлять комментарии