博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
有关于key值
阅读量:6146 次
发布时间:2019-06-21

本文共 433 字,大约阅读时间需要 1 分钟。

key是个属性,react利用key来识别组件,它是一种身份标识的标志。通常,我们使用数据的id来作为元素的key;但是当元素没有id时,可以使用元素索引index作为key。但是一般不建议使用索引来用作key值,这样会导致性能变差,可能还会引起组件状态的问题。

有了key值,可以根据key来决定是销毁还是更新。

  • key相同,如果组件的属性发生变化,react只更新组件对应的属性,没有变化则不更新
  • key不相同,react先销毁该组件,再重新创建该组件

元素的key只有放在就近的数组上下文才有意义

为什么只有数组中的元素需要有唯一的key,而其他的元素不需要呢?答案是:react有能力辨别出,更新前后元素的对应关系。

为了组件内部逻辑的清晰,应该在任何复杂的有状态组件上使用key属性,才能在适合的适合触发组件的销毁与重建,组件才能有一个健康的生命周期。

转载于:https://www.cnblogs.com/tianHHH/p/11001735.html

你可能感兴趣的文章
学习笔记之Data Visualization
查看>>
Leetcode 3. Longest Substring Without Repeating Characters
查看>>
数学之美系列二十 -- 自然语言处理的教父 马库斯
查看>>
Android实现自定义位置无标题Dialog
查看>>
面试总结
查看>>
Chrome浏览器播放HTML5音频没声音的解决方案
查看>>
Android源码学习之观察者模式应用
查看>>
416. Partition Equal Subset Sum
查看>>
Django之FBV与CBV
查看>>
Vue之项目搭建
查看>>
app内部H5测试点总结
查看>>
[TC13761]Mutalisk
查看>>
Data Wrangling文摘:Non-tidy-data
查看>>
while()
查看>>
常用限制input的方法
查看>>
IIS7下使用urlrewriter.dll配置
查看>>
并行程序设计学习心得1——并行计算机存储
查看>>
JAVA入门到精通-第86讲-半双工/全双工
查看>>
bulk
查看>>
js document.activeElement 获得焦点的元素
查看>>