前端开发:Vue实例的生命周期钩子函数的使用
message:’ hello world’ ,
},
methods:{
show(){
console.log(‘+++show’);
}
},
一、组件创建阶段的4个钩子函数
1、第一个生命周期函数,表示实例完全被创建之前,会执行该函数
在beforeCreate生命周期函数执行的时候,data 和 methods 中的数据还没有被初始化。
beforeCreate() {
console.log(this.message); //undefind
this.show() ; //is not defind
},
2、第二个生命周期函数,表示实例进行初始化的时候,会执行该函数
在 created 中,data和methods 都已经被初始化完成。 如果需要调用methods 中的方法,或操作data中的数据,最早只能在created中进行操作。
created() {
console.log(this.message); // hello world
this.show(); //执行了show方法
},
3、第三个生命周期函数,表示模板已经在内存中编译完成,但是还未把模板渲染到页面中
在beforeMount执行的时候,页面中的元素没有被真正替换,只是之前写入的一些模板字符串。
beforeMount() {
console.log(document.getElementById(‘h3’).innerText) //{{message}}
},
4、第四个生命周期函数,表示内存中的模板已经真实的挂载到页面中,用户可以看到已经渲染好的页面
mounted是实例创建期间阶段的最后一个生命周期函数,当执行完 mounted 之后就表示实例已被完全创建,此时如果没有其它操作的话,这个实例就在内存中不动了。
mounted() {
console.log(document.getElementById(‘h3’).innerText) //hello world
},
二、组件运行阶段的2个钩子函数
5、第五个生命周期函数,表示界面还没被更新,但是数据确定已经更新
当执行 beforeUpdate 的时候,页面中的显示的数据还是未更新的旧数据,但此时的data 数据是最新的,页面的数据尚未和最新的数据保持同步更新。
beforeUpdate() {
console.log(‘界面上的内容’+ document.getElementById(‘h3’).innerText) //没有执行,因为数据没改变
console.log(‘data中message数据:’ + this.message)
},
6、第六个生命周期函数,表示界面的数据已经更新
updated事件执行的时候,页面和 data 数据已经保持一致了,都是最新的数据。
updated() {
console.log(‘界面上的内容’+ document.getElementById(‘h3’).innerText) //Hi
console.log(‘data中message数据:’ + this.message) //Hi
},
三、组件销毁阶段的2个钩子函数
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级安卓工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Android移动开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Android)
总结
本文讲解了我对Android开发现状的一些看法,也许有些人会觉得我的观点不对,但我认为没有绝对的对与错,一切交给时间去证明吧!愿与各位坚守的同胞们互相学习,共同进步!
在这里我也分享一份自己收录整理的**Android学习PDF+架构视频+面试文档+源码笔记,还有高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料**帮助大家学习提升进阶,也节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习
间去证明吧!愿与各位坚守的同胞们互相学习,共同进步!
在这里我也分享一份自己收录整理的**Android学习PDF+架构视频+面试文档+源码笔记,还有高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料**帮助大家学习提升进阶,也节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习
更多推荐
所有评论(0)