Vue的介绍:
Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。
Vue的生命周期函数
Vue⽣命周期就是vue实例从创建到销毁的整个过程我们称之为Vue的⽣命周期,可以在不同的阶段进行不同的操作;
Vue的生命周期常用的钩子函数有8个:
分别是:
创建前后:
beforeCreate 创建前
created创建后
挂载前后:
beforeMount挂载前
mounted挂载后
更新前后:
beforeUpdate更新前
updated更新后
销毁前后:
beforeDestory销毁前
destoryed销毁后
每个生命周期执行的时机:
创建前后:也就是创建vue的实例(new Vue())
挂载前后:挂载dom元素(el)
-------注意点:生命周期在创建之后才能够获取data数据;在挂载之后才能够获取dom元素
更新前后:监听的是更新试图或者说是 dom元素
销毁前后:页面进行切换时才会进行销毁
生命周期用来干什么:
创建后:ajax操作,读取本地缓存
挂载后:同样也可以进行ajax操作(我们一般在创建后(created)就进行),这个时候可以操作dom
销毁后:页面有定时器的情况下,页面监听等等需要销毁的操作
注意:其实如果想要在挂载后就获取dom元素的话,我们可以使用$nextTick(异步更新队列方,主要作用就是等到dom元素的加载完毕之后才会执行的回调函数)
页面和组件的生命周期函数的执行顺序:
--→页面的创建前(beforeCreate)
--→页面的创建后(created)
--→页面的挂载前(beforeMount)
--→组件的创建前(beforeCreate)
--→组件的创建后(created)
--→组件的挂载前(beforeMount)
--→组件的挂在后(mounted)
--→页面的挂载后(mounted)
从页面beforeCreate --→ 页面created --→ 页面beforeMount --→ 组件beforeCreate --→ 组件created --→ 组件beforeMount --→ 组件mounted --→ 页面mounted
页面跳转时的生命周期执行:
先执行的是后一页面的创建和挂载前;
然后原始页面销毁;新页面挂载
vue3后setup就替代了创建前后,所以vue3就没有创建前后的钩子函数
其他常用的钩子函数也做了更改
挂载前后:
onBeforeMount挂载前
onMounted挂载后
更新前后:
onBeforeUpdate更新前
onUpdated更新后
销毁前后:
onBeforeUnMount销毁前
unMount销毁后
以上只是个人的理解:
详细请参考:Vue.js (vuejs.org) Vue的官网