Встречается на собеседованиях • сегодня
Как использовать useEffect помимо запросов на сервер
useEffect можно использовать для множества задач помимо запросов:
- Подписки на события (например, resize, scroll):
js
useEffect(() => {
const handleResize = () => console.log(window.innerWidth);
window.addEventListener('resize', handleResize);
return () => window.removeEventListener('resize', handleResize);
}, []);- Работа с localStorage:
js
useEffect(() => {
const savedValue = localStorage.getItem('key');
if (savedValue) setState(savedValue);
}, []);
useEffect(() => {
localStorage.setItem('key', state);
}, [state]);- Интеграция с DOM API (например, focus, timer):
js
useEffect(() => {
const timer = setTimeout(() => {}, 1000);
inputRef.current?.focus();
return () => clearTimeout(timer);
}, []);-
Запуск анимаций через requestAnimationFrame
-
Синхронизация с внешними библиотеками (например, инициализация карт, графиков)
Важно всегда очищать побочные эффекты в функции cleanup, чтобы избежать утечек памяти.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы