Egyedi kulcsok id alapján Reactben

A fenti kódban a key attribútumhoz hozzáadtuk az elem sorszámát a tömbben. Valójában ez a gyakorlat nem megfelelő, és csak szükség esetén kellene használni.

Az a helyzet, hogy ha a tömböt rendezzük, az elemek kulcsai megváltoznak, és a React nem fogja tudni megfelelően nyomon követni a tömbelemek és a hozzájuk tartozó tag-ek közötti kapcsolatot.

Egy jobb gyakorlat minden termékhez hozzáadni egy egyedi azonosítót, amelyet lesz használva kulcsként.

Adjunk hozzá a tömbünkben minden termékhez egy id tulajdonságot a termékünk számával:

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

Most használjuk ezt a id-t kulcsként:

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

Módosítsa az előző feladatot úgy, hogy hozzáad egy id mezőt a tömbhöz és azokat használja a key attribútum értékeiként.