vue的.vue文件是怎么run起来的(vue-loader)


Posted in Javascript onDecember 10, 2018

引子:vue的.vue文件是怎么跑起来的?

 答:通过vue-loader,解析.vue文件,在webpack解析,拆解vue组件

1、vue-loader做了什么?

vue-loader是一个webpack加载器,这是vue组件的格式:

<template>
 ...
</template>
<script>
 ...
</script>
<style>
 ...
</style>

它可以把这样的vue组件转化为JS模块,这其中最值得关注的是,它生成了 render function code

render function code
是从模板编译而来(可以并且应该预编译)的组件核心渲染方法,
在每一次组件的 Render 过程中,
通过注入的数据执行可生成虚拟 Dom

2、vue核心执行过程

vue的.vue文件是怎么run起来的(vue-loader)

vue核心的执行过程主要分为这几个阶段:

1) 编译模板,
生成可复用的render function code,
这一步在vue实例的整个生命周期中只会执行一次甚至零次,
因为我们可以在打包的时候可以预编译
2) 生成watcher等核心渲染监听,
在整个vue实例的生命过程中持续发生着作用,
对view和modal进行双向绑定
3) 虚拟dom的diff比较,
当watcher监听到data的变更的时候,
就会根据注入新的data执行render function code,
生成新的虚拟dom,
跟老的虚拟dom(第一次执行的时候可能为空)进行diff比对,
不同的部分将写入真实的dom

总结

以上所述是小编给大家介绍的vue的.vue文件是怎么run起来的(vue-loader) ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
飞鱼(shqlsl) javascript作品集
Dec 16 Javascript
浅谈js中StringBuffer类的实现方法及使用
Sep 02 Javascript
jQuery autoComplete插件两种使用方式及动态改变参数值的方法详解
Oct 24 Javascript
微信JSAPI Ticket接口签名详解
Jun 28 Javascript
bootstrap treeview 扩展addNode方法动态添加子节点的方法
Nov 21 Javascript
Node.js实现mysql连接池使用事务自动回收连接的方法示例
Feb 03 Javascript
vue实现验证码按钮倒计时功能
Apr 10 Javascript
在vue项目中引入高德地图及其UI组件的方法
Sep 04 Javascript
NUXT SSR初级入门笔记(小结)
Dec 16 Javascript
JavaScript实现密码强度实时验证
Mar 18 Javascript
javascript设计模式 ? 备忘录模式原理与用法实例分析
Apr 21 Javascript
JS中多层次排序算法的实现代码
Jan 06 Javascript
Bootstrap 实现表格样式、表单布局的实例代码
Dec 09 #Javascript
Bootstrap 按钮样式与使用代码详解
Dec 09 #Javascript
Vue源码中要const _toStr = Object.prototype.toString的原因分析
Dec 09 #Javascript
vue form check 表单验证的实现代码
Dec 09 #Javascript
关于Vue Router中路由守卫的应用及在全局导航守卫中检查元字段的方法
Dec 09 #Javascript
vue打包之后生成一个配置文件修改接口的方法
Dec 09 #Javascript
基于Vue-Cli 打包自动生成/抽离相关配置文件的实现方法
Dec 09 #Javascript
You might like
php面向对象全攻略 (十一)__toString()用法 克隆对象 __call处理调用错误
2009/09/30 PHP
PHP可变函数的使用详解
2013/06/14 PHP
关于PHP文件的自动运行方法分析
2016/05/13 PHP
分享一个漂亮的php验证码类
2016/09/29 PHP
JavaScript RegExp方法获取地址栏参数(面向对象)
2009/03/10 Javascript
JavaScript 三种创建对象的方法
2009/10/16 Javascript
js实现图片轮换效果代码
2013/04/16 Javascript
JavaScript执行顺序详细介绍
2013/12/04 Javascript
js调试系列 初识控制台
2014/06/18 Javascript
JavaScript实现在数组中查找不同顺序排列的字符串
2014/09/26 Javascript
js的for in循环和java里foreach循环的区别分析
2015/01/28 Javascript
Angularjs自定义指令实现三级联动 选择地理位置
2017/02/13 Javascript
xmlplus组件设计系列之列表(4)
2017/04/26 Javascript
vue 封装自定义组件之tabal列表编辑单元格组件实例代码
2017/09/07 Javascript
centos 上快速搭建ghost博客方法分享
2018/05/23 Javascript
使用JS实现导航切换时高亮显示的示例讲解
2018/08/22 Javascript
es6 symbol的实现方法示例
2019/04/02 Javascript
vue element table中自定义一些input的验证操作
2020/07/18 Javascript
微信小程序轮播图swiper代码详解
2020/12/01 Javascript
django中send_mail功能实现详解
2018/02/06 Python
在VS2017中用C#调用python脚本的实现
2019/07/31 Python
Python浮点数四舍五入问题的分析与解决方法
2019/11/19 Python
python 普通克里金(Kriging)法的实现
2019/12/19 Python
matplotlib之属性组合包(cycler)的使用
2021/02/24 Python
python中if嵌套命令实例讲解
2021/02/25 Python
Html5饼图绘制实现统计图的方法
2020/08/05 HTML / CSS
戴尔英国翻新电脑和电子产品:Dell UK Refurbished Computers
2019/07/30 全球购物
法国滑雪假期的专家:Ski Planet
2019/11/02 全球购物
HR喜欢的自荐信格式
2013/10/08 职场文书
物流仓储计划书
2014/01/10 职场文书
大二学生职业生涯规划书
2014/02/05 职场文书
科长竞争上岗演讲稿
2014/05/12 职场文书
老干部工作先进集体事迹材料
2014/05/21 职场文书
大学生社区义工服务心得体会
2016/01/22 职场文书
bootstrapv4轮播图去除两侧阴影及线框的方法
2022/02/15 HTML / CSS
解决IIS7下无法绑定https主机的问题
2022/04/29 Servers