生命周期
- 概念
每个组件从创建到销毁都会经理一系列的过程,称为生命周期
把过程执行的回调函数称为生命周期钩子
- 作用
创建后发起ajax请求
挂在后操作dom
添加监听事件
销毁前移出间隔调用,事件监听
tip: 并不是每个生命周期都必须使用
- 生命周期
创建前后
beforeCreate创建前
有this没有data与methods
Create创建后
有data,没有$el,dom节点
用处: ajax请求,定时器,事件监听
挂载前后
beforeMount 挂载前
有$el,数据没有渲染
mounted 挂载后
有dom节点,数据也渲染
用处: 操作节点,ajax请求
更新前后
beforeUpdate 更新前
执行多次, 数据更新,dom节点没有更新
updated 更新完毕
会执行多次, 数据更新dom节点也更新
销毁前后
beforeDestroy 销毁前
数据可以更新, 视图不会更新
destroy 销毁完毕
没有this, 切断视图与
常用的生命周期钩子:
- mounted: 发生ajax请求,启动定时器, 绑定自定义事件, 订阅消息等(初始化操作)
- beforeDestroy: 消除定时器, 解绑自定义事件, 取消订阅消息(收尾工作)
关于销毁Vue实例
- 销毁后借助Vue开发者工具看不到任何信息
- 销毁后自定义事件会失效, 但原生DOM事件依然有效
- 一般不会再beforeDestroy操作数据, 因为不会触发数据更新