10:38秒处关于:key传递问题

来源:3-2 列表渲染-v-for 数组,对象,子组件

mangolime

2017-03-24

视频中说使用:key向可以把父组建数据传递给子组建,但是vuejs在不使用:key来循环子组建时在控制台会有提示要使用:key="item.id" 意思是来记录循环子组建时每一个子组建的标识符(:key并不是传递数据给子组建),这点在reactjs中也有类似要求的。

写回答

2回答

fishenal

2017-03-24

ok,  我看了一下文档, 2.2.0 + 以后 key是必须的:

In 2.2.0+, when using v-for with a component, a key is now required.

https://cn.vuejs.org/v2/guide/list.html

你说的已经很清楚了,我补充一下,key是在组件循环的时候必须的一个参数,用来唯一标识这个组件,在重拍和重用元素的时候会用到key,文档中建议尽量在v-for中都提供key,这点和react是类似的。

1
1
mangolime
非常感谢!
2017-03-24
共1条回复

sunshines

2018-02-28

 <router-link   v-for="(item,index) in products"  :key="index"  :to="{ path: item.path }" tag="li" active-class="active">

    {{ item.name }}   {{index}}

 </router-link> 


添加 :key="index"  ,报错(Emitted value instead of an instance of Error) 就会消失,虽然index用不上,但是要加上

0
0

最容易上手的Vue2.0入门实战教程

快速入门Vue2.0,组件化开发一个数字产品电商平台

3966 学习 · 999 问题

查看课程