数据发生变化时,vue是如何更新节点的?

前言:真实DOM的渲染会引起整个DOM树的重排重绘,会造成非常大的开销。因此,vue采用了Virtual DOM(虚拟DOM)。

  1. 虚拟DOM是将真实DOM数据抽取出来,以对象的形式模拟树形结构。
  2. 在更新节点的过程中采用了diff算法
    diff的过程就是调用patch函数,比较新旧节点,一边比对一边给真实DOM打补丁。

补充知识:

    1.diff的比较方式
    在采用diff算法比较新旧节点时,比较只会在同层级进行,不会跨层级比较。
    2.diff算法在执行时有三个维度:Tree DIFF、Component DIFF、Element DIFF。
    原文作者:VN1023
    原文地址: https://segmentfault.com/a/1190000018816770
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞