ВНИМАНИЕ: Запись на курсы по HTML, CSS, JavaScript, PHP, Python, React, Vue, Laravel и другим фреймворкам и CMS,
а также: помощь в поиске работы и заказов, стажировка на реальных проектах→
⊗jsrtPmHkUED 5 of 47 menu
Вступайте в телеграмм-канал сайта code.mu: новинки, статьи, интервью, задачи, бесплатные курсы и тренинги. Жми для вступления:)

Зависимости в useEffect в React

Теперь давайте будем менять цвет по нажатию кнопки. Заведем стейт color для цвета, задав ему начальное значение:

const [color, setColor] = useState('green');

Заменим строковое значение на наш стейт в useEffect и не забудем добавить его в список зависимостей в квадратных скобках. Теперь эффект будет выполняться каждый раз при изменении стейта color:

function App() { useEffect(() => { document.body.style.backgroundColor = color; }, [color]); ... }

Давайте теперь добавим кнопку для смены цвета в наш компонент:

return ( <div> <h1>React App</h1> <button onClick={changeColor}>change</button> </div> );

Добавим также функцию обработчика клика, которая будет менять наш цвет на оранжевый:

function changeColor() { setColor('orange'); }

Дан стейт с именем пользователя. Сделайте так, чтобы каждый раз при изменении имени, значение стейта записывалось в локальное хранилище браузера.

byenru