Chiavi univoche tramite id in React

Nel codice sopra riportato, nell'attributo key abbiamo aggiunto il numero d'ordine dell'elemento nell'array. In realtà, questa pratica è considerata scorretta e dovrebbe essere utilizzata solo in casi estremi.

Il problema è che quando si ordina l'array, gli elementi avranno chiavi diverse e React non riuscirà a tracciare correttamente la relazione tra gli elementi dell'array e i tag corrispondenti.

Una pratica migliore consiste nell'aggiungere a ogni prodotto un identificatore univoco, che verrà utilizzato come chiave.

Aggiungiamo ora a ogni prodotto nel nostro array una proprietà id con il numero del nostro prodotto:

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

Ora utilizziamo questo id come chiave:

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

Modificate il task precedente, aggiungendo nell'array id e utilizzandoli come valori per l'attributo key.