Встречается на собеседованиях • сегодня
Что такое useLayoutEffect
`useLayoutEffect` — это хук React, аналогичный `useEffect`, но срабатывает синхронно после всех изменений DOM, но до отрисовки браузером. Это позволяет выполнять операции, требующие актуального состояния DOM (например, измерение элементов), без визуального мерцания.
Основные отличия от `useEffect`:
1. Выполняется до отрисовки (paint)
2. Может блокировать визуальные обновления, если содержит тяжелые вычисления
Пример использования:
```jsx
function Tooltip() {
const [position, setPosition] = useState({});
const ref = useRef();
useLayoutEffect(() => {
const rect = ref.current.getBoundingClientRect();
setPosition({
left: rect.left,
top: rect.top + rect.height
});
}, []);
return
Tooltip
;
}
```
Используйте `useLayoutEffect` только когда необходимо синхронное обновление DOM, в остальных случаях предпочтительнее `useEffect`.
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы