在学习使用HBuilderX时接触了这个uni-app的生命周期,以下是个人对于这个生命周期的一些个人的理解。
生命周期
生命周期分为三种:应用生命周期,页面生命周期,组件生命周期
这次主要说的是应用生命周期。
首先我们要了解什么是生命周期
生命周期是指一个对象生老病死,再应用中这个生命周期就是这个应用从打开到关闭。这其中用户的操作只有打开应用和关闭应用这两个操作。
为什么没有其他的操作呢?
如果用户对软件中其他的内容进行操作这就属于页面的生命周期了
应用生命周期函数
onLaunch 在每次打开应用时只会执行一次,且执行的时间是应用加载完成后,无论其中的页面有没有被渲染出来,于此同时还有onShow也会被执行。
onShow 在应用启动,或者从后台进入前台时就会被触发。如过想要在每次进入前台的时候都执行一些事情可以写在这里面,比如更新实时的数据,用户每次进来都会刷新
onHide 在应用切换到后台的时候使用。
onError 在应用发生脚本错误或者接口报错的时候触发,可以用来打印错误信息或用来提醒用户。
注意
应用生命周期只能在App.vue中监听,在其他以恶面中监听无效
在onlaunch生命周期内进行页面的跳转,需要注意:可能会和pages.json内配置的第一个页面跳转时机冲突,造成的错误是手机端页面白屏。这时候就需要做一个延时处理。
onPageNotFound 页面实际上已经打开了(比如通过分享卡片、小程序码)且发现页面不存在,才会触发,api 跳转不存在的页面不会触发(如 uni.navigateTo)