首页 > 其他 > 详细

09.理解虚拟DOM及key属性的作用

时间:2020-04-28 01:10:35      阅读:109      评论:0      收藏:0      [点我收藏+]


技术分享图片

技术分享图片
vue解决jquery的痛点,通过引入一个数据中间层,我们的事件不再直接的操作DOM,而是通过事件改变我们的数据,数据再去映射到我们的真是的DOM。这块功能是由vue的底层帮我们处理的。也就是我们不再直接去操作dom。,数据的更新就会导致dom的更新。
技术分享图片
如何尽可能的高效的去更新我们的dom,操作dom是一件非常消耗性能的事情。
引入虚拟dom的机制,数据+模板生成一个类似dom的树
技术分享图片
查找两棵树的差别,只比对同层节点。
技术分享图片

技术分享图片
c节点编程B和D的子节点。
技术分享图片
发现C节点不在,其实是删除了C节点和下面的EF节点。右边,G节点新建,EF节点也新建。
技术分享图片
理想状态下也是节点的移动,但是算法比较B1和B2节点的时候,它并不知道我们是要移动还是更新,
技术分享图片

引入key


技术分享图片

技术分享图片

看demo


技术分享图片

技术分享图片

技术分享图片

课后习题

index作为key不仅仅是性能的问题,有些场景会有一些严重的bug
技术分享图片


结束



 

09.理解虚拟DOM及key属性的作用

原文:https://www.cnblogs.com/wangjunwei/p/12790908.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!