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.