vuejs的组件列表should have explicit keys的问题

386 阅读1分钟

在书写了以下的代码后,出现问题

<template>
  <carousel-3d >
    <slide v-for="(item,index) in img" :index="index" >
      <img :src="item" alt="">
    </slide>
  </carousel-3d>
</template>

image.png

原因:

v-for 列表渲染时,组件或元素中还要添加一个 :key="xxx",这里可以看一下 item 有没有唯一标识 id,如果有,可以设置为 :key="item.id"

如果没有唯一标识,可以考虑 v-for="(item, idx) in items",然后设置 :key="idx"

将上面的代码修改成现在的样子:

<template>
  <carousel-3d >
    <slide v-for="(item,index) in img" :index="index" :key="index">
      <img :src="item" alt="">
    </slide>
  </carousel-3d>
</template>