平时写代码的时候根本不会去在意这个生命周期,一般就直接拿着用了。最近开始补基础回头细看一下文档和文章,便有了自己的一些收获:
一.new Vue()创造一个vue实例的时候会调用三个方法:initLifecycle(),initEvents(),initRender(),分别代表了初始化生命周期、初始化事件和初始化createElement函数。而keep-alive中的_inactive属性就是initLifecycle()方法定义的。
二.组件被创建前会先定义data和methods,并用observe将数据拦截的同时配置观察者watcher监视数据后续的变化。实现响应式开发
三.template模板、el、vue文件都会被转换成render()函数
四.render()函数渲染成DOM前,会开启一个虚拟DOM用于检测上次开启的虚拟DOM数据是否与这次的相同。
五.当数据发生变化时,会开启一个新的虚拟DOM。新老虚拟DOM会进行对比数据进行计算,再渲染到DOM上
六.完成销毁
下面附上周期图