Встречается на собеседованиях • сегодня
Для чего нужен UseLayoutEffect
`useLayoutEffect` выполняет те же задачи, что и `useEffect`, но синхронно после всех DOM-мутаций, но до отрисовки браузером. Это полезно, когда нужно измерить или изменить DOM до того, как пользователь увидит изменения, избегая визуального мерцания.
Пример:
```jsx
function Example() {
const [width, setWidth] = useState(0);
const ref = useRef(null);
useLayoutEffect(() => {
// Измеряем ширину элемента до отрисовки
setWidth(ref.current.offsetWidth);
}, []);
return
{width}
;
}
```
Ключевые отличия от `useEffect`:
1. Выполняется синхронно после рендера, но до paint
2. Используется для операций, влияющих на визуальное представление
3. Может блокировать отрисовку, если содержит тяжелые вычисления
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы