Почему в React-списках нужно использовать стабильный key, а не индекс? Что делать, если сервер не прислал id?

Стабильный key связывает элемент с его состоянием при вставках и перестановках; индекс может привязать старое состояние к другой записи.

Короткий ответ

Что ответить на собеседовании

Стабильный key связывает элемент с его состоянием при вставках и перестановках; индекс может привязать старое состояние к другой записи.

Подробный разбор

Ответ с пояснениями

Стабильный key связывает элемент с его состоянием при вставках и перестановках; индекс может привязать старое состояние к другой записи.

Если id нет, ищите уникальный стабильный ключ предметной области или создавайте id один раз при приёме/создании записи и сохраняйте его. Не генерируйте key заново при каждом render. Индекс допустим для действительно неизменяемого по составу и порядку списка без соответствующих рисков.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее