Проверяет понимание назначения атрибута key в React для эффективного обновления DOM и возможные проблемы при использовании индекса массива.
Атрибут key в React используется для идентификации каждого элемента в списке при рендеринге. Он помогает алгоритму согласования (reconciliation) эффективно обновлять DOM, определяя, какие элементы были добавлены, удалены или изменены. Без уникального key React может перерисовывать весь список, что снижает производительность.
Использование индекса массива в качестве key может привести к проблемам, если список динамический: элементы добавляются, удаляются или переупорядочиваются. Например, при удалении элемента из середины списка индексы сдвигаются, и React может неправильно сопоставить старые и новые элементы, что вызовет ошибки состояния (например, потеря фокуса в input).
// Плохо: индекс как key
{items.map((item, index) => {item})}
// Хорошо: уникальный id
{items.map(item => {item.name})}Индекс можно использовать только для статических списков, которые не изменяются после рендеринга (например, список констант). В остальных случаях лучше применять уникальные идентификаторы из данных.
Вывод: Используйте уникальные и стабильные key для динамических списков, чтобы избежать багов и обеспечить высокую производительность React-приложений.
Frontend developer
Ментор по Frontend
Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства
Записаться на консультацию