vue的生命周期是什么?到底怎么运用,我想大多数新手学完vue的生命周期后都会很蒙,因为长久以来我们更加习惯用算法和语法来看待编程,不如换个思维,先做个脑筋急转弯:这个世界上有一个动物早上是4条腿,中午是2条腿,晚上是3条腿,请问是什么动物?
答案就是’人‘,人的一生,婴幼儿时期爬行,成年步行,晚年用拐杖前行,其实我认为完全可以将vue看做一个人的一生,爱因斯坦说时间是单向的,只有一个方向,只有在黑洞里面,时间才是多向的,但空间又会变成单向。
哈,扯远了,也就是说在时间不可逆的状态下,必须要在不同的生命周期来使用方法,下面我使用了一个在编辑器中敲出来的实例来总结一下vue的生命周期
<script>
let sy = new Vue({
el:"#app",
data:{},
methods:{},
beforeCreate(){
//vue实例完全被创建之前执行的 (函数1)
//在beforeCreate生命周期函数执行的时候,data和methods中的数据都没有被初始化
},
created(){
//在created中,data和methods初始成功,可以操作其数据 (函数2)
},
//判断是否有template模板,无则创建,虚拟DOM并渲染内存,此时并没有挂载到页面 (运行1)
beforeMount(){
//模板编译完成,还未挂载页面 (函数3 孕期)
},
mounted(){
//内存挂载完成到页面中,用户可以看到渲染好的页面。实例完全创建成功 (函数4)
//vue实例初始化成功,进入到运行阶段
},
beforeUpdate(){
//数据完成了更新,界面没有被更新,页面和新数据未能保持同步 (函数5)
},
//先根据data中的数据,在内存中重新渲染出新的数据库 (运行2)
Update(){
//页面和data数据保持同步 (函数6)
},
beforeDestroy(){
//vue实例进入准备销毁阶段,实例所有数据和方法、指令等都处于可用状态 (函数7)
},
Destroyed(){
//组件完全销毁,所有的指令、数据、方法等都不可用 (函数8)
}
})
</script>
总结来说:vue的孕期青年-中年-老年-死亡四种状态,vue提供了不同的函数来加入方法
网友评论