Snabbdom Diff 算法的执行过程

2021-03-12  本文已影响0人  翔子丶

Diff 算法执行过程:

在比较开始时首先对新老节点数组的开始和结尾节点设置标记索引,遍历比较时会出现四种情况

  1. oldStartVnode/newStartVnode 比较

  2. oldEndVnode/newEndVnode 比较

  3. oldStartVnode/newEndVnode 比较

  4. oldEndVnode/newStartVnode 比较

image-20210228165945045.png image-20210228171242986.png image-20210228171352435.png image-20210228171655490.png image-20210228173229550.png
*   旧节点的子节点个数大于新节点的子节点个数,新节点先遍历完(newStartIdx > newEndIdx),循环结束

    此时旧节点有剩余,把剩余节点批量删除
image-20210228173532921.png
上一篇 下一篇

猜你喜欢

热点阅读