Chắc hẳn trong quá trình làm việc với Vuejs, mọi người không ít lần sử dụng v-for để xử lý các vòng lặp. Và có hai vấn đề mà khá nhiều người đang gặp phải khi set giá trị cho key trong v-for.
Trong docs của Vue có đề cập: Children of the same common parent must have unique keys
.
Nhiều người đang hiểu same parent
ở đây có nghĩa là nằm trong cùng component, hay cùng một file .vue
. Tuy nhiên, Vue chỉ yêu cầu các key khác nhau khi trong cùng một v-for , có nghĩa là việc hai element có cùng key trong cùng một file .vue
là bình thường, không có vấn đề gì.
Chỉ trừ duy nhất một trường hợp tuy nằm ở các v-for khác nhau nhưng key vẫn phải khác nhau đó là khi các v-for đó siblings - nghĩa là chúng nằm cạnh nhau trong DOM
, ví dụ:
{{ item.text }}