项目中只用到过mounted, updated生命周期
想知道beforeCreate、create.......destroyed在项目中有什么实际用法
声明周期钩子,就是当组件在某个生命周期时候触发,比如说如果需要手工操作dom或者其它非vue插件需要操作dom,那么必须得在dom生成后,那这时候就得在mounted触发。
再比如说一些组件在不使用的时候,内部的数据还在使用,那么在destroyed的时候手工清理掉就可以实现内存优化。
再比如说,组件内需要ajax获取数据,那么就可以在create时使用ajax,这时候dom还未渲染,正好用于获取数据。
10 回答11.3k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
2 回答4.8k 阅读✓ 已解决
4 回答4.4k 阅读✓ 已解决
4 回答1.9k 阅读✓ 已解决
这个东西并没有说什么规定的应用,而是vue希望向开发者提供组件的整个生命周期中的一些时刻调用的钩子函数,你需要了解的是这些钩子函数在什么时候运行,此时组件状态是怎样的,这个钩子函数结束后会做什么,
beforeCreate为例:
生命周期的各个阶段提供的钩子函数何时运行?
beforeCreate,此时组件状态如何
beforeCreate钩子函数结束后会做什么
知道了以上这些,可以知道,beforeCreate执行时,数据观测 (data observer) 和 event/watcher 事件配置都还没有运行,那么我们就可以做一些改变,甚至修改这些数据观测 (data observer) 和 event/watcher 事件,这个时候就是结合业务场景来看的,比如有的时候为了做适应,可能事件最开始是click事件,但是某些情况希望是touch事件,这里就可以修改,做判断了。