千锋教育-做有情怀、有良心、有品质的职业教育机构
1. vue2的生命周期
- 初始化阶段: - beforeCreate - created
- 挂载阶段 - beforeMount - mounted
- 更新阶段 - beforeUpdate - updated
- 卸载阶段 - beforeDestroy - destroyed
- 缓存组件相关 - activated - deactivated
- 处理错误相关 - errorCaptured
2. vue3 的生命周期
在vue2 的基础上新增了:
- renderTracked: 跟踪虚拟 DOM 重新渲染时调用。钩子接收debugger event作为参数。此事件告诉你哪个操作跟踪了组件以及该操作的目标对象和键。
- renderTriggered:当虚拟 DOM 重新渲染被触发时调用。和 renderTracked 类似,接收 debugger event 作为参数。
此事件告诉你是什么操作触发了重新渲染,以及该操作的目标对象和键。 一共 13 个
3. vue3的组合api的生命周期,移除了beforeCreate和created,因为创建时的事件可以在setup里面直接调用。其他的 11 个生命周期前面全部加上on
比如:mounted -> onMounted, beforeDestroy -> onDeforeDestroy
4. 网络请求为什么要挂载在mounted中?
在Created生命周期里Data才生成,而请求返回的数据需要挂载在data上,所以 Created里是可以初始化请求的,但是Created的这时候DOM还没有初始化;
Mounted生命周期里DOM才初始化渲染完成。然而,请求是异步的,所以不会堵塞页面渲染的主线程。
所以请求放在created和mounted里面都是可行的。如果我们的请求不需要获取/借助/依赖/改变 DOM,这时请求可以放在Created。反之则可以放在 Mounted里。这样做会更加的安全,也能保证页面不会闪烁。
下一篇
vue项目中用jsx语法相关推荐