引言
相信绝大多数的前端小伙伴已记不清做了多少项目,写了多少代码了,每个人如同教科书般地写着Vue代码:
// 单文件组件中常见代码
export default {
data () {
return {
msg: 'click me'
}
},
methods: {
say () {
this.msg = 'well done'
}
}
}
// 入口文件中的常见代码
new Vue({
el: '#app',
router: router,
render: h => h(App)
})
一切都显得那么自然。不过在百忙之中是否有小伙伴想过,一个小小的Vue实例怎么有这么大的能量,竟然可以构建出如此复杂的前端项目。那么Vue内部是如何运转的呢,做了哪些事情呢,从今天开始跟着我一探究竟。
vue是可以运行在多平台上的如浏览器,weex等,本文只分析vue在浏览器环境下的主线执行流程。
初始化
我们先看一下Vue的构造函数: