В чем разница между state и props

Ответ

State и props — это механизмы управления данными в React, но они используются по-разному:

  • Props (properties) — данные, передаваемые от родительского компонента к дочернему. Они неизменяемы (immutable) внутри дочернего компонента.

    function Child({ name }) {
      return <h1>Hello, {name}!</h1>;
    }
    <Child name="Alice" /> // `name` — это prop
  • State — внутренние данные компонента, которые могут изменяться (например, через useState). Изменения state вызывают ререндер компонента.

    function Counter() {
      const [count, setCount] = useState(0);
      return <button onClick={() => setCount(count + 1)}>{count}</button>;
    }

Ключевые отличия:

  • Props только для чтения, state — изменяемый.
  • Props передаются сверху вниз, state управляется внутри компонента.
  • Изменение props перерисовывает дочерний компонент, изменение state — текущий.