衡水企业网站建设公司,公司品牌官网建站,网络营销销售方式,wordpress 破解账号微信小程序利用key实现列表性能的提升 key值在列表渲染的时候#xff0c;能够提升列表渲染性能#xff0c;为什么呢#xff1f;首先得想想小程序的页面是如何渲染的#xff0c;主要分为以下几步#xff1a; 将wxml结构的文档构建成一个vdom虚拟数页面有新的交互#xff0…微信小程序利用key实现列表性能的提升 key值在列表渲染的时候能够提升列表渲染性能为什么呢首先得想想小程序的页面是如何渲染的主要分为以下几步 将wxml结构的文档构建成一个vdom虚拟数页面有新的交互产生新的vdom数然后与旧数进行比较看哪里有变化了做对应的修改删除、移动、更新值等操作对比vue、react最后再将vdom渲染成真实的页面结构 key值的作用就在第二步当数据改变触发渲染层重新渲染的时候会校正带有 key 的组件框架会确保他们被重新排序而不是重新创建以确保使组件保持自身的状态并且提高列表渲染时的效率。key值如果不指明默认会按数组的索引来处理因而会导致一些类似input等输入框组件的值出现混乱的问题。 不加key在数组末尾追加元素之前已渲染的元素不会重新渲染。但如果是在头部或者中间插入元素整个list被删除重新渲染且input组件的值还出现了混乱值没有正常被更新添加key在数组末尾、中间、或者头部插入元素其它已存在的元素都不会被重新渲染值也能正常被更新 因而在做list渲染时如果list的顺序发生变化时最好增加key且不要简单的使用数组索引当做key需要用唯一值当成key。