Senior
Čo sa stane, ak ako kľúč odovzdáte index poľa?
sobes.tech AI
Odpoveď od AI
Použitie indexu poľa ako kľúča (key) v React môže viesť k problémom s výkonom a správnosťou aktualizácie komponentov. Pri zmene poradia prvkov alebo pri vkladaní/odstraňovaní prvkov sa indexy menia, a React môže nesprávne spárovať komponenty, čo spôsobí zbytočné prekrývanie alebo stratu stavu.
Napríklad, ak máte zoznam:
{items.map((item, index) => (
<ListItem key={index} item={item} />
))}
A vložíte nový prvok na začiatok poľa, všetky kľúče sa posunú, a React takmer všetky komponenty znovu vytvorí, hoci by bolo možné aktualizovať len jeden.
Je lepšie používať jedinečné a stabilné identifikátory z údajov, napríklad id:
{items.map(item => (
<ListItem key={item.id} item={item} />
))}