Os documentos dizem:
No Vue 3.x, a chave deve ser colocada na tag.
<template v-for="item in list" :key="item.id">
<div>...</div>
<span>...</span>
</template>
Mas desejo usar o índice como minha chave, então faço:
<template v-for="(item, index) in props.items" :key="index">
Mas recebo o aviso index is declared but never read
.
Como consertar?
O objetivo de uma chave é ser capaz de identificar itens independentemente de onde eles estejam na lista. Como o índice não é intrínseco ao item, isso não acontece. Você pode obter o mesmo efeito de usar o índice como chave, simplesmente não declarando a chave inteiramente, mas isso não é recomendado:
https://vuejs.org/guide/essentials/list.html#maintaining-state-with-key