vue渲染页面的流程_Vue渲染过程浅析

本文详细解析Vue渲染页面的过程,包括模板编译为render函数、虚拟DOM的生成及更新。Vue使用render函数提高组件渲染效率,避免重复解析模板。当组件内部data或props变化时,Vue通过数据劫持触发组件的重新渲染,确保组件间的隔离。文中通过实例解释了数据变化如何影响render方法,并探讨了父组件如何通过props影响子组件的渲染。
摘要由CSDN通过智能技术生成

Vue 推荐在绝大多数情况下使用 template 来创建你的 HTML。但是模板毕竟是模板,不是真实的dom节点。从模板到真实dom节点还需要经过一些步骤

把模板编译为render函数

实例进行挂载, 根据根节点render函数的调用,递归的生成虚拟dom

对比虚拟dom,渲染到真实dom

组件内部data发生变化,组件和子组件引用data作为props重新调用render函数,生成虚拟dom, 返回到步骤3

第一步: 模板到render

在我们使用Vue的组件化进行开发应用的时候, 如果仔细的查看我们要引入的组件, 例子如下

// App.vue

hello word

export default {

}

在我们的主入口main.js

import Vue from 'vue'

import App from './App'

console.log(App)

new Vue({

render: h => h(App)

}).$mount('#app')

我们能够看到在我们引入的App这个模块,里面是一个对象,对象里面存在一个方法叫做render。在说render函数之前,我们可以想一想,每一次加载一个组件,然后对模板进行解析,解析完后,生成Dom,挂载到页面上。这样会导致效率很低效。而使用Vue-cli进行组件化开发,在我们引入组件的后,其实会有一个解

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值