TGViewer
{ Снежные строки } { Снежные строки } @snowlines · 89 subscribers
Post #62 140
❄️ Чем отличаются useEffect, useLayoutEffect и useInsertionEffect?

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

❔Давайте разберёмся!

1️⃣ useEffect
Это самый популярный хук для работы с побочными эффектами.
Он выполняется асинхронно после того, как браузер завершит рендер и отрисует изменения на экране

2️⃣ useLayoutEffect
Этот хук похож на useEffect, но выполняется синхронно перед тем, как браузер отрисует изменения

useLayoutEffect(() => {
const element = document.getElementById('my-element');
element.style.width = '100px';
}, []);


3️⃣ useInsertionEffect
Этот хук появился в React 18 и предназначен для вставки стилей в DOM перед рендером
‼️Используется в основном библиотеками, работающими с CSS-in-JS

💡Итог
- useEffect - для большинства задач!
- useLayoutEffect - только если нужно синхронное взаимодействие с DOM
- useInsertionEffect - на своем опыте никогда не использовала. Как советует документация React - хук предназначен для авторов библиотек CSS-in-JS

#React
  • 👨‍💻 6
  • 👍 3
  • ❤ 2
More from @snowlines
  1. Jul 8, 2025Post #94
  2. Jul 3, 2025❄️ Вернулась с отпуска, сейчас нужно заново научиться работать
  3. Jun 9, 2025❄️ Хочу начать серию постов про Redux Redux - state manager, которым я пользуюсь, как в ли…
  4. Jun 5, 2025Post #91
  5. Jun 5, 2025#Задачи
  6. May 24, 2025❄️ Функция высшего порядка Тема, которую можно встретить на собеседованиях очень часто. Да…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →