vue生命周期就是vue的实例从创建到销毁的过程,分为四个大的阶段
创建
beforeCreate 创建前
created 创建后 此时数据准备好了 我们可以在这个时候去发送ajax请求(拿ajax数据)
挂载
beforeMount 挂载前
mounted 挂载后 此时视图准备好了 我们可以使用ref来获取视图中的dom 到这个时候,vue组件实例算真正初始化完成 前面这二大阶段只会执行一次(操作dom)
更新
当有数据的值变化的时候,此时会进入到更新阶段,这个阶段会反复执行只要数据有变化
beforeUpdate 更新前 数据已经是最新的,但是视图还是旧的
updated 更新后 数据和视图都已经变成最新的
销毁
beforeDestroy 销毁前 在这个阶段我们可以做一些清理性的工作,比如清除当前组件中开启的定时器 卸载在当前组件中绑定的DOM事件(addEventListener)
destroyed 销毁后
其余钩子
缓存组件keep-alive相关的两个钩子
activated 激活
deactivated 失活
为什么需要上面这二个钩子?
因为加了keep-alive 8个钩子初始化只会执行一次后面就不会执行了,销毁钩子永远也不会执行