Vue的:key用法及示例

article/2023/6/4 15:39:59

在 Vue 中,使用 v-for 指令循环遍历数组或对象时,每个子元素都需要绑定一个唯一的 key 值,用于标识这个子元素。我们可以使用 :key 属性来绑定这个 key 值。例如:

<div v-for="item in itemList" :key="item.id">{{ item.name }}</div>

在这个例子中,我们使用 v-for 循环遍历了一个名为 itemList 的数组,然后为每个子元素绑定了一个唯一的 key 值,即 item.id。这样,在更新视图时,Vue 就能够根据这个 key 值来判断哪些元素是新增加的,哪些元素是被删除的,哪些元素需要更新,从而提高了渲染效率。

值得注意的是,key 值必须是唯一的、稳定的,并且不推荐使用随机数或者索引作为 key 值。如果使用随机数或者索引作为 key 值,会导致更新时出现问题,因为它们可能在不同的渲染周期中生成相同的值。正确的做法应该是使用一个稳定的唯一标识符,比如数据库中的 ID 值或者其他全局唯一的标识符。

总之,:key 属性是 Vue 中一个非常重要的属性,用于标识每个子元素的唯一性,确保渲染效率和正确性

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head><body><div id="app"><div><input type="text" v-model="name"><button @click="addNewUser">添加</button></div><ul><li v-for="user in userlist" :key="user.id"><input type="checkbox">姓名:{{user.name}}</li></ul></div><script src="./lib/vue-2.6.14.js"></script><script>const vm = new Vue({el: "#app",data: {userlist: [{ id: 1, name: "paprika" },{ id: 2, name: "white" },],presentId: 2,name: "",},methods: {addNewUser() {this.presentId++this.userlist.push({ id: this.presentId, name: this.name })}}})</script>
</body></html>

 

http://www.ngui.cc/article/show-1007621.html

相关文章

开发过程中遇到的关于flask的相关问题(flask入门教程,flask CORS跨域访问、base64解码为图像、PIL、CV2和bytes之间格式转换)

1、flask入门上手教程 我主要目的是快速开发&#xff0c;因此学习flask是随便找的一个教程跟着做了下&#xff0c;而没有系统地学习&#xff0c;大概差不多了就去按自己需求进行开发了。 以下是我跟的一个简单教程&#xff0c;讲述了如何快速部署一个简单的python服务器&…

“全球首款旗舰”填补行业空白,两轮电动车技术创新为何只看绿源?

作者 | 曾响铃 文 | 响铃说 乒乓作为我们的“国球”&#xff0c;在数不清的体育赛事里书写辉煌战绩&#xff0c;也进一步被国人熟知、热爱。更难能可贵的是“国球”精神&#xff1a;“别人可能练了一千次&#xff0c;而我们却练了一万次”&#xff0c;冠军品质&#xff0c;奋…

java--基于XML或者注解AOP

1、基于动态代理实现 动态代理实现基本方式&#xff1a;https://blog.csdn.net/qq_34577961/article/details/128162372 2、面向切面AOP 2.1、基本步骤思路 1、引入依赖 基本依赖配置https://blog.csdn.net/qq_34577961/article/details/129152040?csdn_share_tail%7B%22…

内存泄漏 定位方法

目录 内存概念 物理内存 虚拟内存 内存泄漏 定位方法和手段 1.MemInFo MemTotal MemFree MemAvailable Cached 2 vmalloc info 3.Kmemleak 算法原理 使用方法 参考文献与链接&#xff1a; 如果你点进这篇文章&#xff0c;那么要么你是一个C\C程序员&#xff0c;…

如何通过检测微芯片操作来对抗硬件木马

在他们的项目中&#xff0c;研究人员拍摄了数千张微芯片的显微图像。图为采用金色芯片封装的芯片。被检查的芯片面积只有两平方毫米左右。 来自德国波鸿鲁尔大学和马克斯普朗克安全与隐私研究所 (MPI-SP) 的研究人员正在开创创新的检测技术来对抗这些硬件木马。 他们的先进算…

未佩戴安全带智能识别 opencv

未佩戴安全带智能识别通过pythonopencv网络模型识别分析技术&#xff0c;未佩戴安全带智能识别自动识别现场工地作业人员高空作业是否按要求佩戴安全带&#xff0c;不需人为干预自动抓拍告警同步提醒后台人员及时处理。OpenCV的全称是Open Source Computer Vision Library&…

WLAN速度突然变慢

目录 一、问题 二、在设置中重置网络 1. 按下组合键“WinI”打开设置&#xff0c;在设置窗口中点击“网络和Internet”。 2、点击左侧的“状态”&#xff0c;在右侧选择“网络重置”。 3、然后会进入“网络重置”页面&#xff0c;点击“立即重置”后点击“是”等待完成即可…

记一次悲催的负优化被清词经历以及自救过程

事情起因 事情的起因是这样的&#xff0c;我有一款产品运营了将近一年&#xff0c;经过产品迭代和不断优化&#xff0c;产品的新增逐渐增加起来&#xff0c;就在上个月好不容易迎来小高潮&#xff0c;在某个地区的几个热词排行里分别进了第 3 名 和 第 5 名。从此新增数据水涨…

vue2_mix混入的用法

文章目录背景minx混入使用1.定义了一个mix.js2. 定义一个组件混入mixmix的同享组件作用域this相同使用场景结尾背景 多个vue文件出现大量重复的函数和生命周期处理时使用mix混入 minx混入 当组件使用混入对象时&#xff0c;所有混入对象的选项将被“混合”进入该组件本身的选…

正则表达式学习,及部分样例

对于正则表达式,相信很多人都知道,但是很多人的第一感觉就是难学, 因为看第一眼时,觉得完全没有规律可寻,而且全是一堆各种各样的特殊 符号,完全不知所云。 其实只是对正则不了解而以,了解了你就会发现,原来就这样啊正则所用 的相关字符其实不多, 也不难记,更不难懂,…