Vue模板转换成视图的过程

Vue模板转换成视图的过程

1.vue.js通过编译将templete模板转换成渲染函数(render),执行渲染函数就可以得到一个虚拟节点树。
2.在对Model进行操作的时候,会触发对应Dep中的Watcher对象。Watcher对象会调用对应的update来修改视图,这个过程主要是将新旧虚拟节点进行差异对比,然后根据对比结果进行DOM操作来更新视图。简单来说,在Vue的底层实现上,Vue将模板编译成虚拟Dom渲染函数。结合Vue自带的响应系统,在状态改变时,Vue能够智能的计算出重新渲染组件的最小代价并应用到DOM操作上。
在这里插入图片描述渲染函数:渲染函数是用来生成Virtual Dom的,Vue推荐使用模板来构建我们的应用界面,在底层实现中Vue会将模板编译成渲染函数。当然我们也可以不写模板,直接写渲染函数,以获得更好的控制。
VNode虚拟节点:它可以代表一个真实的dom节点。通过createElement 方法能将VNode渲染成dom节点。简单的说,vnode可以理解成节点描述对象,它描述了应该怎样去创建真实的DOM节点。
patch(也叫做patching算法):虚拟DOM最核心的部分,它可以将vnode渲染成真实的DOM,这个过程是对比新旧虚拟节点之间有哪些不同,然后根据对比结果找出需要更新的节点进行更新。其实际作用是在现有DOM上进行修改来实现更新视图的目的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值