foundation

Keys

Используйте стабильные key, чтобы сохранить нужную идентичность и не перенести state на неверный элемент списка.

Key сообщают React, какой элемент коллекции соответствует какому экземпляру среди соседей. Они не передаются в компонент как props — React использует их внутри. Стабильные id из базы лучше индексов массива при изменении порядка.

Неверные key переносят state между строками — классический баг: введённый текст оказывается в другом поле после сортировки. Случайные key на каждом render ломают reconciliation и принудительно перемонтируют элементы.

					// рискованно после перестановки
items.map((item, index) => <Row key={index} />);
				

На интервью объясняйте концепцию на конкретном примере и называйте поведение, которое проверяют.

Типовые ошибки: скрывать поток данных, дробить компоненты чрезмерно и выполнять побочные эффекты в render.

Компромисс часто между ясностью и переиспользованием или между явными props и удобством.

Чеклист:

  • Key уникальны среди соседей и стабильны между render.
  • При мутациях списка предпочитайте id записи индексу.
  • Не используйте Math.random() на каждом render как key.