Реагировать на ключи со строкой и индексом

Согласно документации React, они не рекомендуют использовать ключ в качестве индекса. но есть ли проблема с использованием индекса и строкового значения. как ниже один,


transactionDetail.map((item,index) => <div key={`transaction-{index}`}>{trName}</div>)

есть ли проблема с таким использованием?

2 ответа

Решение

Если вы не собираетесь изменять массив, т.е. transactionDetail & порядок массива не будет меняться при каждом повторном рендеринге, можно использовать индекс в качестве ключа.

В противном случае, если он будет изменен или вы будете его видоизменять, вам следует использовать какое-то значение, уникальное для каждого элемента внутри transactionDetail

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

Другие вопросы по тегам