vue虛擬dom原理

看風景就發表於2018-03-26

Virual DOM是用JS物件記錄一個dom節點的副本,當dom發生更改時候,先用
虛擬dom進行diff,算出最小差異,然後再修改真實dom。

vue的virtual dom的diff演算法是基於snabbdom演算法改造而來,與react的diff演算法一樣
僅在同級的vnode間做diff,遞迴的進行同級vnode的diff,最終實現整個DOM樹的更新。

虛擬DOM的缺點:

1. 程式碼更多,體積更大

2. 記憶體佔用增大

3. 小量的單一的dom修改使用虛擬dom成本反而更高,不如直接修改真實dom快

相關文章