提到虚拟DOM就需要提一下vue的就地复用策略
vue的就地复用策略:就是尽可能的进行(同级别,同位置),对比虚拟dom进行对比,复用旧Dom结构,进行差异化更新
虚拟Dom就是一个个描述真实dom结构的对象,为什么进行虚拟dom对比,因为真实的dom,比较复杂,拥有大量的无关属性,比较起来比较费时间和性能,所以利用虚拟dom进行对比,但是就算是虚拟的dom结构直接比也很麻烦,所以,vue中就提供了diff算法:
算法比较的规则
1.先比较根级元素,如果虚拟的dom元素不同,就直接删除旧dom节点,创建新新节点
2.比较同级,在没有设置key属性的情况下,自动按下标进行差异性比较,然后更新渲染;在设置了key值的情况下,按相同key值进行比较,这样可以提高虚拟dom对比的效率,进而提高渲染性能
注意点:这个key 必须是数子或者字符串,还必须是唯一的,如果有id就用id,没有用name也行,最后再考虑用index
============================= 术语 ==============================&#