vm的生命周期钩子(共11个):
前8个:
将要创建===>调用beforeCreate函数
创建完毕===>调用created函数
将要挂载===>调用beforeMount函数
(重要)挂载完毕===>调用mounted函数========>【重要钩子】
将要更新===>调用beforeUpdate函数
更新完毕===>调用updated函数
(重要)j将要销毁===>调用beforeDestroy函数========》【重要钩子】
销毁完毕===>调用destroyed函数
第9个 :
nextTick:
-
语法:this.nextTick(回调函数)
-
作用:在下一次DOM更新结束后执行其指定的回调
-
什么时候用:当改变数据后,要基于更新后的新DOM进行某些操作时,要在nextTick所指定的回调函数中执行。
第10、11个(路由中):
作用:路由组件所独有的两个钩子,用于捕获路由组件的激活状态
具体名字:
-
activated路由组件被激活时触发
-
deactivated路由组件失活时触发
常用的生命周期钩子:
-
mounted:发送ajax请求、启动定时器、绑定自定义事件、订阅消息等【初始化操作】
-
beforeDestroy:清除定时器、解析自定义事件、取消订阅消息等【收尾工作】
关于销毁Vue实例
-
销毁后借助Vue开发者工具看不到任何信息
-
销毁后自定义事件会失败,但原生DOM事件依然有效
-
一般不会再beforeDestroy操作数据,因为即便操作数据,也不会再触发更新数据了