Na aula e no texto auxiliar é informado que não é recomendado usar o index do array como key, nesse caso o que devo passar como key de um componente?
Na aula e no texto auxiliar é informado que não é recomendado usar o index do array como key, nesse caso o que devo passar como key de um componente?
Oi, Rubilar! Tudo bem?
A documentação do React nos informa que o ideal é usar uma string que identifica unicamente um item da lista dentre os demais. Na maioria das vezes você usaria IDs de seus dados como chave:
const todoItems = todos.map((todo) =>
<li key={todo.id}>
{todo.text}
</li>
);
Quando não temos nenhum ID estável podemos usar o índice em último caso, mas isso não é recomendado pois a ordem dos itens pode ser alterada. Isso pode impactar de forma negativa o desempenho e poderá causar problemas com o estado do componente.
Vou deixa o artigo escrito por Robin Pokorny para uma explicação aprofundada nos impactos negativos de se usar um índice como chave. E também uma explicação aprofundada do porquê o uso das chaves é importante.
Abraços e bons estudos!