vue入门

本文深入探讨Vue.js作为渐进式框架的性能优势,重点分析其通过虚拟DOM减少DOM操作,从而提升应用性能的机制。文章详细解释了DOM操作的代价及浏览器渲染过程,阐述了虚拟DOM的工作原理及其如何优化前端开发。

1:我们为什么要使用vue

  • 性能更好
  • 试图、数据分离
  • 维护陈本低

2:vue是什么

Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。

3:vue的性能好在哪里

(1)什么会影响web应用的性能

操作DOM影响性能,因为操作DOM是十分昂贵的

2)为什么操作DOM非常昂贵

A:JS和 DOM是两种东西,每次连接都需要消耗性能

B:操作DOM会导致重排和重绘

(3)JS与dom的关系

DOM是一个独立于语言的,用于操作XML和HTML文档的程序接口(API)。在浏览器中主要用于与HTML文档打交道,并且使用DOM API用来访问文档中的数据。

DOM是个与语言无关的API,它在浏览器中的接口却是用JavaScript来实现的。客户端脚本编程大多数都是在和底层文档打交道,DOM就成为现在JS编码中的重要部分。

浏览器中通常会把DOM和javascript独立实现。

(4)DOM的位置和JavaScript的位置

在IE中,JavaScript的实现名为JScript,位于jscript.dll文件中,DOM的实现则存在另一个库中,名为mshtml.dll(内部称为trident)。

safari中的DOM和渲染是使用webkit中的webcore实现,JavaScript部分是由独立的SquirelFish引擎来实现。

google chrome使用webkit中的webCore库来渲染页面,但JavaScript引擎是他们自己研发的,名为V8。

firefox的JavaScript引擎名为TraceMonkey,与名为Gecko的渲染引擎相互独立。

(5)修改DOM元素的代价,则更为昂贵,因为它会导致浏览器重新计算页面的机会变化。

(6):浏览器的渲染过程

在下载完所有的html 、css、js、图片之后会依次发生

  • 解析HTML,构建DOM树
  • 解析CSS,生成CSS规则树
  • 合并DOM树和CSS规则树,生成render树
  • 布局render树,负责各元素尺寸、位置的计算
  • 绘制render树,绘制页面像素信息
  • 浏览器会将各层的信息发送给GPU,GPU将各层合成

当DOM的变化影响了元素的几何属性(宽和高),浏览器需要重新计算元素的几何属性,同样其他元素的几何属性和位置也会因此受到影响。浏览器会使渲染树中受到影响的部分失效,并重新构造渲染树。这个过程称为重排,完成重排后,浏览器会重新绘制受影响的部分到屏幕中,该过程称为重绘。

什么时候触发重排

当页面布局和几何属性改变时就需要重排:

1. 添加或删除可见的DOM元素。

2. 元素位置改变

3. 元素尺寸改变( 外边距、内边距、边框厚度、宽度、高度等)

4. 内容改变,例:文本改变或图片被另一个不同尺寸的图片替代

5. 页面渲染器初始化

6. 浏览器窗口尺寸改变

vue的性能到底好在哪里

vue的核心是虚拟dom,使用虚拟dom可以减少dom的操作,从而提升应用的性能

什么是虚拟dom

所谓虚拟dom,即为伪dom他不是一个真实的dom,而是由JS来模拟出来的具有真实dom结构的一个树形结构。

为什么要用JS来模拟dom结构?

再html\css\js中只有js做到判断、循环、递归、能够实现各种逻辑、实现各种算法

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值