Назад к вопросам
Middle
75
questionbank
Приведи примеры того, что можно сделать с хукoм useEffect, кроме выполнения запросов на сервер.
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
-
Управление состоянием заголовка страницы (
document.title). -
Подписка и отписка от событий браузера (например, изменение размера окна, клики вне элемента):
useEffect(() => { const handleResize = () => { console.log('Размер окна изменился'); }; window.addEventListener('resize', handleResize); return () => { window.removeEventListener('resize', handleResize); }; }, []); // Пустой массив зависимостей: эффект выполняется один раз при монтировании и отписывается при размонтировании. -
Работа с локальным хранилищем (чтение/запись данных):
useEffect(() => { const savedValue = localStorage.getItem('myInputValue'); if (savedValue) { setInputValue(savedValue); // Предполагается, что есть состояние inputValue и функция setInputValue } }, []); // Загрузка значения при монтировании. useEffect(() => { localStorage.setItem('myInputValue', inputValue); // Сохранение при изменении inputValue. }, [inputValue]); // Зависимость от inputValue. -
Инициализация сторонних библиотек или компонентов.
-
Настройка и очистка таймеров (
setTimeout,setInterval):useEffect(() => { const timerId = setInterval(() => { console.log('Таймер работает'); }, 1000); return () => { clearInterval(timerId); // Очистка интервала при размонтировании. }; }, []); -
Отслеживание изменений пропсов или состояния и выполнение действий в ответ на эти изменения.
-
Фокусировка на элементе при монтировании компонента:
useEffect(() => { inputRef.current.focus(); // Предполагается, что есть ref inputRef }, []);