Sobes.tech
Back to questions
Middle+
7

Если родительский компонент передаст новый массив в качестве пропсов, увидишь ли ты новые данные на экране или старые? Почему?

Companies where asked
IT OneIT One

Answer from AI

sobes.tech AI

Если родительский компонент передаст новый массив в пропсах, то в дочернем компоненте отобразятся новые данные. Это связано с тем, что React сравнивает пропсы по ссылке. При передаче нового массива ссылка меняется, поэтому React понимает, что пропсы обновились, и перерисовывает компонент с новыми значениями.

Пример:

function Parent() {
  const [items, setItems] = React.useState([1, 2, 3]);

  // Создаем новый массив при обновлении
  const updateItems = () => setItems([4, 5, 6]);

  return <Child data={items} />;
}

function Child({ data }) {
  return <div>{data.join(", ")}</div>;
}

При вызове updateItems в Parent в Child отобразятся новые данные.