1、分析
首先找到vue的构造函数
源码位置:src\core\instance\index.js
options是用户传递过来的配置项,如data、methods等常用的方法。
vue构建函数调用_init方法,但我们发现文本中并没有这个方法,但仔细看可以看到文件下定义了很多初始化方法。
首先可以看到initMixin方法,发现该方法在vue原型上定义了_init方法
源码位置:src\core\instance\init.js
在调用beforeCreate之前,数据初始化并未完成,像data、props这些属性无法访问到。
到了created的时候,数据已经初始化完成,能够访问到data、props这些属性,但这时候并未完成dom的挂载,因此无法访问到dom元素。
挂载方法是调用vm.$mount方法
initState方法是完成props/data