文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Vue的列表渲染方法有哪些

2023-06-25 16:17

关注

本篇内容介绍了“Vue的列表渲染方法有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

1. v-for:遍历数组内容(常用)

in 也可以用 of 代替

<body><div id="div1"><li v-for='(p,i) in persons' :key=i>{{p.name}}--{{p.age}}<!-- 张--18 李--19 刘--17 --></li></div></body><script type="text/javascript">Vue.config.produnctionTps=false new Vue({el:"#div1",data:{persons:[{id:'001',name:"张",age:18},{id:'002',name:"李",age:19},{id:'002',name:"刘",age:17},]}})</script>

2. v-for:遍历对象属性(常用)

<body><div id="div1"><li v-for='(p,k) in persons' :key=k>{{p}}--{{i}}<!-- 张--name 18--age --></li></div></body><script type="text/javascript">Vue.config.produnctionTps=false new Vue({el:"#div1",data:{persons:{name:"张",age:18}}})

3.遍历字符串(不常用)

<body><div id="div1"><li v-for='(p,i) in str' :key=i>{{p}}--{{i}}<!-- a--0  b--1 c--2 d--3 e--4 --></li></div></body><script type="text/javascript">Vue.config.produnctionTps=false new Vue({el:"#div1",data:{str:"abcde"}})</script>

4.遍历指定次数(不常用)

<body><div id="div1"><li v-for='(p,i) in 5' :key=i>{{p}}--{{i}}<!-- 1--0 2--1 3--2 4--3 5--4 --></li></div></body>

5.key 的作用和原理

在上面都用的index 作为key,但是在破坏顺序修改dom以及有input内容就会出错。仅在用于渲染页面而不需要修改页面时可用index作为key.

强烈建议用数据的唯一标识,如id、手机号、邮箱号作为key

1.虚拟DOM中key的作用:

key是虚拟DOM对象的标识,当数据发生变化时,Vue会根据[新数据]生成[新的虚拟DOM] ,随后Vue进行[新虛拟DOM]与[旧虛拟DOM]的差异比较,比较规则如下:

2.对比规则:

(1).旧虚拟DOM中找到了与新虚拟DOM相同的key:

①.若虛拟DOM中内容没变, 直接使用之前的真实DOM!

②.若虛拟DOM中内容变了,则生成新的真实DOM,随后替换掉页面中之前的真实DOM。

(2).旧虚拟DOM中未找到与新虚拟DOM相同的key创建新的真实DOM,随后渲染到到页面。

3.用index作为key可能会引发的问题:

若对数据进行:逆序添加、逆序删除等破坏顺序操作:

会产生没有必要的真实DOM更新==>界面效果没问题,但效率低。

如果结构中还包含输入类的DOM:

会产生错误DOM更新==> 界面有问题。

4.开发中如何选择key?

最好使用每条数据的唯一标识作 为key,比如id、 手机号、身份证号、学号等唯一值。

如果不存在对数据的逆序添加、逆序删除等破坏顺序操作,仅用于渲染列表用于展示,使用index作为key是没有问题的。

“Vue的列表渲染方法有哪些”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯