1-浏览器渲染页面的流程 1-1 当浏览器发送请求得到响应数据以后,浏览器会通过HTML解析器来构建DOM树,通过CSS解析产生CSS规则树 1-2 如果页面有一些JS逻辑,那么往往会通过JS对DOM,CSS进行修改操作。往往会造成页面的重绘和重排 2-什么是重绘和重排 2-1 当元素的几何属性(大小,位置)发生变化后,那么浏览器会重新对几何属性进行重新计算 并且也会影响到其他元素,其他元素也会将自身的几何属性进行重新计算 2-2 重新计算几何属性的过程成为重排 2-3 重排完成之后肯定会产生重绘,渲染的过程称为重绘 3-直接操作DOM的缺陷:当页面比较复杂的时候,会产生多次的重排和重绘,从而消耗性能,浪费执行时间。可以通过虚拟DOM解决这些问题 4-React高效的原因:React不会直接操作真实的DOM,可以减少重绘和重排,操作的是虚拟DOM 5-虚拟DOM是什么? 5-1 虚拟DOM本质是JS对象,对象的属性与真实的DOM的属性相对应 5-2 虚拟DOM的改变不会触发重绘和重排,虚拟DOM不需要真实DOM那么多的属性,可以按需指定属性,所以虚拟DOM是轻量级的 5-3 虚拟DOM会转化为真实DOM,重绘重排只会产生一次 5-4 也可以将虚拟DOM理解为真实DOM的一个副本或者缓存 5-5 虚拟DOM也被称为虚拟DOM元素,在React中被称为React元素 5-6 创建虚拟DOM在React中有两种方式: 1-React.createElement (了解) 2- JSX,JSX的本质就是React.createElement的语法糖
虚拟DOM对象的理解
最新推荐文章于 2024-07-25 09:24:40 发布