鍍金池/ 問答/HTML/ VUE循環(huán)時(shí)必須要寫這個(gè):key嗎?

VUE循環(huán)時(shí)必須要寫這個(gè):key嗎?

我發(fā)現(xiàn)不寫這個(gè):key就會(huì)報(bào)錯(cuò) 這個(gè)有什么用呢 為什么不用cli的方式寫循環(huán)時(shí)就不會(huì)報(bào)錯(cuò)?
:key有實(shí)際作用嗎?:key后面一般跟什么?

<div class="blog" v-for="(items, index) in all">          
</div>

圖片描述

回答
編輯回答
氕氘氚

cli對(duì)vue的格式會(huì)比較嚴(yán)格,所以報(bào)錯(cuò)提示。
使用v-for更新已渲染的元素列表時(shí),默認(rèn)用就地復(fù)用策略;列表數(shù)據(jù)修改的時(shí)候,他會(huì)根據(jù)key值去判斷某個(gè)值是否修改,如果修改,則重新渲染這一項(xiàng),否則復(fù)用之前的元素。簡(jiǎn)單地說key的作用主要是為了高效的更新虛擬DOM。
key值是數(shù)據(jù)中的唯一標(biāo)識(shí),例如數(shù)組的序號(hào)或者數(shù)據(jù)中的id。

2017年11月24日 10:24
編輯回答
慢半拍

有必要,嚴(yán)格來說不建議使用數(shù)組的index作為key,但是開發(fā)中往往都是這么干的

2018年2月7日 16:10
編輯回答
萌二代

用index即可,作用是為了給 Vue 一個(gè)提示,以便它能跟蹤每個(gè)節(jié)點(diǎn)的身份,從而重用和重新排序現(xiàn)有元素,你需要為每項(xiàng)提供一個(gè)唯一 key 屬性。官網(wǎng)有答案,key

2018年4月12日 02:23
編輯回答
誮惜顏

這個(gè)不是必須的,但是一般寫代碼都會(huì)寫上:key,比如v-for="(item, index) in list" :key="index"

2018年7月15日 15:17