vue2.0生命周期
- beforeCreate 此时$el、data 的值都为undefined
- create之后,此时可以拿到data的值,但是$el依旧为undefined
- beforeMount 此时$el的值为“虚拟”的元素节点
- mount之后,mounted之前,“虚拟”的dom节点被真实的dom节点替换,并将其插入到dom树中,于是在触发mounted 时,可以获取到$el为真实的dom元素
created、mounted、activated、deactivated
这四个是最常用到的部分。这部分需要注意下,当引入keep-alive的时候,页面第一次进入,钩子的触发顺序created-> mounted-> activated,退出时触发deactivated。当再次进入(前进或者后退)时,只触发activated。
参考:http://xiangsongtao.com/article/5853b2c0044bf1353af82fbf http://www.jianshu.com/p/42429f4d8f9e?nomobile=yes
还有,beforeDestroy 和 destroyed 钩子一般在v-if 和 v-for时触发
例子:
<demo v-if="hasDemo"></demo>
那么将 hasDemo 由 true 改为 false 时,会触发 Demo 组件的销毁钩子。
注意 v-show 指令不销毁元素而只是隐藏,故不会触发这个钩子。
vue官网:https://cn.vuejs.org/v2/guide/instance.html#生命周期图示
参考:http://www.cnblogs.com/gagag/p/6246493.html
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步