加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

简单理解vue中track-by属性

发布时间:2020-12-17 03:06:27 所属栏目:百科 来源:网络整理
导读:本文实例为大家解析了vue中track-by的属性,供大家参考,具体内容如下 api: 示例地址: 无track-by情况:数据修改时,无论值是否被修改,dom都被重新渲染(控制台可以看到) 加入track-by属性:数据修改时,不变数据所在的dom不被重新渲染,已改变的数据所

本文实例为大家解析了vue中track-by的属性,供大家参考,具体内容如下

api:

示例地址:

无track-by情况:数据修改时,无论值是否被修改,dom都被重新渲染(控制台可以看到)

加入track-by属性:数据修改时,不变数据所在的dom不被重新渲染,已改变的数据所在dom才被重新渲染

track-by的两种使用方法:

1. 使用数据中某唯一字段,例如_uid

// 初始数据 items: [ { _uid: '222221',message: '111' },{ _uid: '222222',message: '222' },{ _uid: '333333',message: '333' },{ _uid: '444444',message: '444' },{ _uid: '555555',message: '555' } ] // 修改成 modify: function () { this.items = [ { _uid: '222221',{ _uid: '666666',message: '3333' },{ _uid: '888888',message: '4444' },{ _uid: '999999',message: '5555' } ] }

渲染效果如下图右(左边无track-by,右边有track-by),_uid和message都不变的情况下,才不被重新渲染,只有第一组符合条件。

2. 使用$index,其它条件同上

渲染效果如下图右,message的值第一、二条都没改变,所以一、二都没有重新渲染。

模板中同时使用message和_uid时,只有两者都不变的情况下才不重新渲染,如下:

本文已被整理到了《》,欢迎大家学习阅读。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程之家。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读