vue实例的生命周期讲一下 ,mounted 阶段真实DOM
1、beforeCreate: Vue实例被创建,但尚未完成初始化,此时组件的一些属性如props、methods还未初始化。
2、created: Vue实例已经创建完成,数据已经初始化,但真实DOM树并未创建,并不能访问模板中的任何元素。
3、beforeMount: 此时Vue实例已经完成了数据的初始化,但还没有开始编译模板,虚拟DOM已经创建,但并未生成真实的DOM。
4、mounted: Vue实例挂载到DOM节点上,此阶段真实的DOM已经生成,可以通过this.$el来访问到挂载的DOM节点。该阶段通常用于初始化第三方插件、绑定事件等DOM相关操作。
5、beforeUpdate: 数据更新时,虚拟DOM重新渲染之前会执行beforeUpdate钩子函数。该钩子函数中的逻辑可以和updated钩子函数中的逻辑相互对应,例如可以在此阶段暂存一些数据,用于和updated钩子函数中的新数据进行比较。
6、updated: 数据更新时,虚拟DOM会重新渲染,此阶段DOM也会重新渲染,并重新渲染过程中会执行updated钩子函数。因此,该钩子函数中可以执行一些需要DOM更新后才能执行的逻辑。
7、beforeDestroy: Vue实例销毁之前调用,可以在此阶段执行一些清理工作。
8、destroyed: Vue实例已经被销毁,此阶段可以进行一些善后工作,例如清除定时器、解绑事件等。