vue.js - [Vue warn]: Avoid using non-primitive value as key

查看:904
本文介绍了vue.js - [Vue warn]: Avoid using non-primitive value as key的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

请问,我使用elementui的时候写了v-if判断,虽然功能可行但一直报错:

[Vue warn]: Avoid using non-primitive value as key, use string/number value instead.

下面上代码:

<template>
  <div>
    <el-carousel :interval="5000" type="card" height="600px" @change="cardchange">
      <el-carousel-item v-for="item in items" :key="item">
        <img :src="item.imgsrc" alt="">
      </el-carousel-item>
    </el-carousel>
    <template>
      <div>
        <h3 v-if="num == 0">0</h3>
        <h3 v-else-if="num == 1">1</h3>
        <h3 v-else-if="num == 2">2</h3>
        <h3 v-else-if="num == 3">3</h3>
        <h3 v-else-if="num == 4">4</h3>
        <h3 v-else>f</h3>
      </div>
    </template>
  </div>
</template>

初衷是上面carousel自动切换的时候判断他的索引,并在下面的标签中显示对应的介绍,请各位大神帮忙解答,thk

解决方案

<el-carousel-item v-for="item in items" :key="item">

这里的[Vue warn]是指不要用对象或是数组作为key,用string或value作为key。
你这里很明显item是对象,:key相当于是索引的作用,提高循环性能,如果循环量较小,不写也可以的。

这篇关于vue.js - [Vue warn]: Avoid using non-primitive value as key的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆