Уникални ключове чрез id в React

В горния код в атрибута key добавяхме поредния номер на елемента в масива. Всъщност тази практика е лоша и трябва да се използва само в краен случай.

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

По-добра практика ще бъде да добавим на всеки продукт уникален идентификатор, който ще се използва като ключ.

Нека в нашия масив на всеки продукт добавим свойство id с номера на нашия продукт:

jsxconst prods = [
  {id: 1, name: 'product1', cost: 100},
  {id: 2, name: 'product2', cost: 200},
  {id: 3, name: 'product3', cost: 300},
];

Сега като ключ използваме този id:

jsxfunction 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>;
}
Задание 1

Модифицирайте предишната задача, като добавите в масива id и ги използвате като стойности на атрибута key.