### vue的生命周期:
- 1、
new vue()
:创建一个vue实例,就会进入组件的创建过程; - 2、
init
:初始化组件的事件和生命周期函数; - 3、
beforeCreat()
是组件创建的第一个生命周期;data和methods都没有被触发; - 4、
created()
:第二个生命周期函数,组件的data和methods已经初始化完毕;主要发起ajax请求; - 5、把data的数据拿到,并解析执行模板结构中的指令,当所有指令被解析完毕,那么模板页面就被渲染到内存中了;当模板编译完成,我们的模板页面还没有挂载到页面上,只存内存中,用户看不到;
- 6、
beforMount()
:模板在内存中编译完成,会立即执行实例和创建阶段的生命周期函数,内存的模板结构还没有真正渲染到页面;模板上看不到真实数据;用户看到的只是一个页面而已; - 7、把内存中渲染好的模板结构,替换到页面上;
- 8、
mounted()
:是组件渲染的最后一个生命周期函数;页面已经渲染好了,用户可以看到真实的页面数据;这个生命周期函数执行完,组件就离开了创建阶段,进入到运行的阶段;注意组件需要在mounted里初始化 - 9、运行状态;组件运行的生命周期:
- 10、组件运行中的生命周期函数,会根据data数据的变化,有选择性的触发0次或n次
- 11、
beforeUpdate()
:运行生命周期函数的时候,数据肯定是新的,但是也没上呈现的是旧的; - 12、正在根据新的data数据,重新渲染内存中的模板结构,并把渲染好模板结构,替换到页面上;
- 13、
updated()
:页面完成了更新,此时data数据是最新的,同时页面上的数据,也是最新的; - 14、
beforeDestroy()
:当执行beforeDestroy的时候,组件即将被销毁,但是黑没有真正开始销毁,组件还是正常可用;data,methodes等数据方法依然可用; - 15、销毁中
- 16、destroyed():组件已经完成销毁;
rea命周期
react主要分为3个阶段;
- 1、组件创建阶段:只执行一次;
- 2、组件运行阶段:按需,根据props属性或state状态改变,有选择行的执行0到多次;
- 3、组件销毁阶段:只执行1次;