uni-app 生命周期
在我们使用uni-app编写开发小程序的时候,常常会使用到生命周期函数,那么uni-app里的生命周期函数和我们之前所使用的有什么不同呢?一起跟着作者的脚步看一下吧。
uni-app框架的生命周期分为两种 : 应用中的生命周期 和 页面内的生命周期
1. uni-app 应用生命周期
生命周期的概念:一个对象从创建、运行、销毁的整个过程被成为生命周期。
生命周期函数:在生命周期中每个阶段会伴随着每一个函数的触发,这些函数被称为生命周期函数
uni-app
支持如下应用生命周期函数:
函数名 | 说明 |
---|---|
onLaunch | 当uni-app 初始化完成时触发(全局只触发一次) |
onShow | 当 uni-app 启动,或从后台进入前台显示 |
onHide | 当 uni-app 从前台进入后台 |
onError | 当 uni-app 报错时触发 |
应用生命周期函数是在App.vue中定义的,这里附上一段App.vue代码:
第一次加载页面时会调用onLaunch ,onShow 打印App Launch,App Show
当你在浏览器离开页面,去查看其它页面,或者其它应用会触发onHide,在回来查看该页面时触发onShow ,打印App Hide,App Show
我们手动把onShow方法里面的console.log(‘App Show’) 改为consol.log(‘App Show’) 去掉一个e字母,这样会导致报错,这个时候我们onError方法就可以监听到错误
2. uni-app 页面生命周期
uni-app
支持如下页面生命周期函数:
函数名 | 说明 | 平台差异说明 | 最低版本 |
---|---|---|---|
onLoad | 监听页面加载,其参数为上个页面传递的数据,参数类型为Object(用于页面传参),参考示例 | ||
onShow | 监听页面显示。页面每次出现在屏幕上都触发,包括从下级页面点返回露出当前页面 | ||
onReady | 监听页面初次渲染完成。 | ||
onHide | 监听页面隐藏 | ||
onUnload | 监听页面卸载 |
index.vue页面里面定义的页面生命周期函数如下:
第一次加载首页,触发onLoad,onShow,onReady方法,依次打印页面加载了,页面显示了,页面初次渲染完成了
当你在浏览器离开页面,去查看其它页面,或者其它应用,会触发onHide方法,打印页面隐藏了,在回来查看该页面时触发onShow方法,打印页面显示了。可以发现印页面加载了,页面初次渲染完成了都不在打印,证明onLoad,onReady方法只触发一次,而onShow,onHide方法多次触发
当我们取tabbr底部栏从首页切换到其它页面,会触发onHide方法,打印页面隐藏了。再次会到首页,触发onShow方法,打印页面显示了
文章总结
本文介绍了uni-app框架的生命周期,以及一些使用场景和用法,希望这些能对你有所帮助。