Уникални ключове чрез id в React
В горния код в атрибута key
добавяхме поредния номер на елемента в
масива. Всъщност тази практика е
лоша и трябва да се използва само в краен
случай.
Работата е там, че при сортиране на масива елементите ще получат други ключове и React няма да може правилно да проследява връзката между елементите на масива и съответните тагове.
По-добра практика ще бъде да добавим на всеки продукт уникален идентификатор, който ще се използва като ключ.
Нека в нашия масив на всеки продукт
добавим свойство id с номера на нашия
продукт:
const prods = [
{id: 1, name: 'product1', cost: 100},
{id: 2, name: 'product2', cost: 200},
{id: 3, name: 'product3', cost: 300},
];
Сега като ключ използваме този id:
function App() {
const res = prods.map(function(item) {
return <p key={item.id}>
<span>{item.name}</span>:
<span>{item.cost}</span>
</p>;
});
return <div>
{res}
</div>;
}
Модифицирайте предишната задача, като добавите
в масива id и ги използвате като
стойности на атрибута key.