Руслан Куянец | Reactify
5.81K subscribers
706 photos
53 videos
39 files
289 links
Я IT-специалист, ментор и основатель проекта YeaHub и сообщества Reactify. Здесь рассказываю про Frontend и IT.

Менторство:
https://reactify.ru

YouTube канал:
https://youtube.com/@reactify-it

YeaHub:
https://yeahub.ru/

Связь:
@ruslan_kuyanets
Download Telegram
Кастомные React Hooks

Одна из главных концепций React - это хуки. Когда начинающие изучают хуки, у них может возникнуть вопрос: а зачем вообще нужны кастомные хуки? Использовать встроенные хуки, такие как useState или useEffect, действительно удобно и понятно. Но когда дело доходит до создания собственных хуков, может возникнуть некоторая путаница.

Многие источники утверждают, что кастомные хуки - это способ переиспользования логики между компонентами. Хотя это верно, важно понять, что суть кастомных хуков намного шире. Да, они могут помочь в переиспользовании логики, но это не единственная их роль.

На самом деле, кастомные хуки - это не что иное, как функции, которые позволяют вынести определенный код из компонентов в отдельный файл. Это упрощает тестирование и поддержку кода, делает компоненты более читаемыми и организованными. Эти функции могут использовать другие хуки, как встроенные, так и другие кастомные, для реализации своей логики.

Важно понять, что логика в кастомных хуках может быть как переиспользуемой, так и специфичной для определенного случая. Нет строгих правил о том, какую логику можно или нельзя выносить в кастомный хук. Главное - это чистота и понятность кода. Если вынос части логики в отдельный хук делает ваш код проще и понятнее, то это хороший повод для создания кастомного хука.

#react #обучающийПост #hook
👍8👌4🤝1
Хук useToggle

Хук useToggle в React — это удобный инструмент для управления состояниями, такими как открытие/закрытие, включение/выключение. Это простой способ переключения между двумя состояниями (обычно true и false) в компонентах. Особенно полезен для интерактивных элементов UI, таких как кнопки переключения, скрытие и отображение элементов и т.д. useToggle повышает читаемость кода и упрощает управление состоянием.

#react #code #useToggle #hook
👏8👍4
Дебаунсинг в React

Несмотря на полезность хука useDebounce, есть аргументы в пользу использования стандартной функции debounce.

Проблемы useDebounce:
- Использование useEffect увеличивает сложность кода из-за необходимости контроля за зависимостями хука.
- Неоптимальное использование useEffect может привести к лишним перерисовкам и перерасходу памяти.
- Хуки с побочными эффектами увеличивают зависимости от состояния компонента, что усложняет поддержку кода.

Преимущества стандартной функции debounce:
- Функция debounce не зависит от жизненного цикла компонента, что упрощает её использование и тестирование.
- Отсутствие привязки к состоянию компонента снижает риск возникновения ошибок.
- Функция легко переиспользуется в разных частях приложения без дополнительной интеграции.

#react #debounce #hook
🔥10👍6💯2
Forwarded from React Frontend | YeaHub
#react #hook
Какие особенности имеют хуки useEffect и useLayoutEffect?

Уровень: 4️⃣

useEffect выполняется асинхронно после рендеринга и "покраски" DOM, подходит для большинства побочных эффектов, включая API запросы и асинхронные операции, не требующие моментального отображения в DOM.

useLayoutEffect вызывается синхронно после изменений в DOM, но перед их визуальным отображением, используется для действий, требующих немедленного выполнения, таких как коррекции размеров или позиций элементов, чтобы избежать визуальных артефактов.


Ресурсы для изучения:
📔Дока
📄Статья
📹YouTube
Please open Telegram to view this post
VIEW IN TELEGRAM
9👍7🔥2