React/Vue项目时在列表组件中的key转载
原创初始代码。首字母代码。
{{ i }}
var vm = new Vue({ el: #app, data: { dataList: [1, 2, 3, 4, 5] } })
有无key一样:
vm.dataList = [4, 1, 3, 5, 2] // 数据位置替换数据位置替换数据位置替换
// 没有key的情况, 节点位置保持不变,但节点innerText内容已更新内容已更新 [
4
, // id: A
1
, // id: B
3
, // id: C
5
, // id: D
2
// id: E
]
// 有key的情况,dom节点位置已交换,但内容未更新
// {{ i }}
[
4
, // id: D
1
, // id: A
3
, // id: C
5
, // id: E
2
// id: B
]
有key相反,它不是太好。相反,它并不是那么好。
vm.dataList = [3, 4, 5, 6, 7] // 添加和删除数据添加或删除数据添加或删除数据添加和删除数据
// 1. 没有key的情况, 节点位置保持不变,内容已更新
[
3
, // id: A
4
, // id: B
5
, // id: C
6
, // id: D
7
// id: E
]
// 2. 有key的情况, 节点已删除节点已删除 A, B 节点、新节点、已添加节点、新 F, G 节点
// {{ i }}
[
3
, // id: C
4
, // id: D
5
, // id: E
6
, // id: F
7
// id: G
]
转载于:https://www.cnblogs.com/anbozhu7/p/11249288.html 版权声明
所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除