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 相关文章推荐
Firefox div高度自适应
Apr 28 Javascript
Javascript的getYear、getFullYear、getUTCFullYear异同分享
Nov 30 Javascript
浅谈js中调用函数时加不加括号的问题
Jul 28 Javascript
jQuery zTree 异步加载添加子节点重复问题
Nov 29 jQuery
javascript连接mysql与php通过odbc连接任意数据库的实例
Dec 27 Javascript
Vue中的methods、watch、computed的区别
Nov 26 Javascript
Vue2.x Todo之自定义指令实现自动聚焦的方法
Jan 08 Javascript
JavaScript之解构赋值的理解
Jan 30 Javascript
详解微信小程序图片地扯转base64解决方案
Aug 18 Javascript
微信小程序项目总结之记账小程序功能的实现(包括后端)
Aug 20 Javascript
小程序识别身份证,银行卡,营业执照,驾照的实现
Nov 05 Javascript
优化Vue中date format的性能详解
Jan 13 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和ACCESS写聊天室(九)
2006/10/09 PHP
php做下载文件的实现代码及文件名中乱码解决方法
2011/02/03 PHP
初学PHP的朋友 经常问的一些问题。不断更新
2011/08/11 PHP
PHP基础知识回顾
2012/08/16 PHP
PHP小教程之实现双向链表
2014/06/12 PHP
ThinkPHP CURD方法之limit方法详解
2014/06/18 PHP
PHP中抽象类、接口的区别与选择分析
2016/03/29 PHP
JavaScript入门教程(5) js Screen屏幕对象
2009/01/31 Javascript
JavaScript DOM学习第一章 W3C DOM简介
2010/02/19 Javascript
Javascript 八进制转义字符(8进制)
2011/04/08 Javascript
document.documentElement和document.body区别介绍
2013/09/16 Javascript
ionic实现可滑动的tab选项卡切换效果
2020/04/15 Javascript
微信小程序 删除项目工程实现步骤
2016/11/10 Javascript
JS利用cookies设置每隔24小时弹出框
2017/04/20 Javascript
在React中如何优雅的处理事件响应详解
2017/07/24 Javascript
Form表单上传文件(type=&quot;file&quot;)的使用
2017/08/03 Javascript
Vue自定义指令封装节流函数的方法示例
2018/07/09 Javascript
详解Vue源码中一些util函数
2019/04/24 Javascript
js 将线性数据转为树形的示例代码
2019/05/28 Javascript
Python continue语句用法实例
2014/03/11 Python
Python 实现链表实例代码
2017/04/07 Python
Python cookbook(数据结构与算法)将名称映射到序列元素中的方法
2018/03/22 Python
学生信息管理系统python版
2018/10/17 Python
Python使用crontab模块设置和清除定时任务操作详解
2019/04/09 Python
python3使用print打印带颜色的字符串代码实例
2019/08/22 Python
python 根据网易云歌曲的ID 直接下载歌曲的实例
2019/08/24 Python
Python Process多进程实现过程
2019/10/22 Python
浅谈tensorflow模型保存为pb的各种姿势
2020/05/25 Python
《天游峰的扫路人》教学反思
2014/04/25 职场文书
党的群众路线教育实践活动总结
2014/10/30 职场文书
医学生自荐信范文
2015/03/05 职场文书
校园歌手大赛主持词
2015/07/03 职场文书
《确定位置》教学反思
2016/02/18 职场文书
幼儿园语言教学反思
2016/02/23 职场文书
资产移交协议书
2016/03/24 职场文书
html5实现点击弹出图片功能
2021/07/16 HTML / CSS