TypeError: Cannot read property 'key' of undefined

问题详情:
父组件往子组件传递数据,
clipboard.png
图片描述

子组件接受数据并定义一个默认值:
图片描述

当点击按钮时,删除该数组的任一值
图片描述

数据正常发生了改变,但是却报错:
clipboard.png

但是,以同样的过程,改变一个我自己创建的数组里的数据时,却没有报错:
clipboard.png

说明我的方法是没问题的,但是为什么删除传过来的数组里的任一值值却报错,往这个数组添加任一值,也不报错???

阅读 17.1k
2 个回答

:key 指定错了应该会导致此异常 ?

  • 例如

 <div   v-for="(value,index) in starUnits" :key="index">
       <p class="personne">{{value}}</p>
        <div v-if="value.boolean"></div>
 </div>

不应该 :key="index" 应该写 :key="value" 因为下文有<p class="personne">{{value.title}}</p>的一些引用。

你用的是1.0吗?2.0应该报错信息更加丰富

看看代码里那里调用了anything.key, 这个anything调用时是undefined, 检查一下赋值过程。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题