Назад к вопросам
Junior
114
questionbank

Для чего используется директива useState?

Sobes Copilot

Получайте ответы в реальном времени

Ответ от нейросети

sobes.tech AI

useState — это React-хук, который позволяет добавлять состояние в функциональные компоненты. Он возвращает массив из двух элементов: текущего значения состояния и функции для его обновления. При вызове функции обновления компонент перерендеривается с новым значением.

Пример использования:

import { useState } from 'react';

function Counter() {
  // 'count' - текущее состояние, 'setCount' - функция для его обновления
  const [count, setCount] = useState(0);

  return (
    <div>
      <p>Счетчик: {count}</p>
      <button onClick={() => setCount(count + 1)}>
        Увеличить
      </button>
    </div>
  );
}

Основные особенности:

  • Добавляет состояние: Позволяет использовать состояние в компонентах, ранее доступное только в классовых.
  • Функция обновления: Возвращает специальную функцию для изменения состояния.
  • Перерендер: Изменение состояния через функцию обновления вызывает перерендер компонента.
  • Примитивы и объекты: Может хранить любые типы данных: числа, строки, булевы значения, объекты, массивы.
  • Ленивая инициализация: Начальное значение может быть функцией, которая выполняется только при первом рендере, что полезно для дорогих вычислений.
const [data, setData] = useState(() => {
  // Дорогие вычисления выполняются только один раз
  const initialData = someExpensiveCalculation();
  return initialData;
});