Vue前端面试题总结(二十八)Vue生命周期 详解

Vue生命周期

在vue中每一个组件都是独立的 每一个组件都有自己的生命周期
从创建 到数据初始化 挂载 更新 销毁 这就是一个组件的生命周期

初始化

- beforecreate(创建前)

在组件或者实例中通过 new vue()创建出来之后会有初始化事件跟生命周期 然后执行beforeCreate钩子函数 这个时候只有一些默认的生命周期钩子和默认事件 无法访问 数据 跟 Dom

- created(创建后)
dom和methods已经初始化完成 这个时候已经可以使用 可以修改数据 在这个阶段一般做一些数据的初始化和初始化页面的请求
比如结束loading

挂载

- beforemount(挂载前)
执行在组件挂载之前 该阶段还没渲染出来HTML元素 data初始化完成
这个时候已经可以访问数据 已经出现了虚拟Dom
该阶段在服务器渲染依然不可以调用

- mounted(挂载后)
这个函数是在挂载后调用的
该阶段在服务器渲染依然不可以调用

更新

- beforeupdate(更新前)
在数据更新前调用 发生在虚拟Dom重新渲染之前 可以在这个钩子函数里面更改状态 并且不会重复触发渲染过程

** - dated(更新后)**
在由于数据更改导致地虚拟 DOM 重新渲染和打补丁只会调用,调用时,组件 DOM 已经更新,所以可以执行依赖于 DOM 的操作,然后在大多是情况下, 应该避免在此期间更改状态,因为这可能会导致更新无限循环,该钩子在服务器端渲染期间不被调用

销毁

- beforeDestory(销毁前)
在实例销毁前调用 实例依然可以使用
还可以使用this进一步获取数据
可以做一个定时器
或者清除挂载的dom事件

- Destoryed(销毁后)
这个阶段已经清除了所有的实例 dom 事件方法
该钩子在服务器端渲染期间不被调用

猜你喜欢

转载自blog.csdn.net/Rick_and_mode/article/details/108652454