周期指程序从创建、到开始、暂停、唤起、停止、卸载的过程。下面从一下三个方面介绍微信 小程序 的生命周期:
应用生命周期
页面生命周期
应用生兆散命周期影响页面生命周期
应用生命周期
1、用户首次打开小程序,触发 onLaunch(全局只触发一次)。
2、小程序初始化完成后,触发onShow方法,监听小程序显示。
3、小程序从前台进入后台,触发 onHide方法。
4、小程序从后台进入前台显示,触发 onShow方法。
5、小程序后台运行一定时间,或系统资源占用过高,会被销毁。
前台、后台定义: 当用户点击左上角关闭,或者按了设备 Home 键离开微信,小程序并没有直接销毁,而是进入了后台;当再次进入微信或再次打开小程序,又会从后台进入前台。需要注意的是:只有当小程序进入后台一定时间,或者系统资源占用过高,才会被真正的销毁。
页面生命周期
1、小程序注册完成后,加载页面,触发onLoad方法,一个页面只会调用一次。
2、页面载入后触发onShow方法,显示页面,每次打开页面都会调用一次。
3、首次显示页面,会触发onReady方法,渲染页面元素和样式,一个页面只会调用一次。
4、当小程序后台运行或跳转到其他页面时,触发onHide方法。
5、当小程序有后台进入到前台运行或重新进入页面时,触发onShow方法。
6、当使用重定向方法wx.redirectTo(OBJECT)或关闭当前页返回上一页wx.navigateBack(),触返猜做发onUnload
wx.navigateTo跳转状态下,页面A和页面B的生命周期逻辑
1、进入A页面:A执行onLoad()-->onShow()-->onReady();
2、A页面navigateTo B页面:A执行onHide(),B执行onLoad()-->onShow()-->onReady();
3、B页面返回A页面:B执行onUnload(),A执行onShow();
4、退出A页面:A执行onUnload()。
应用生命周期影响页面生命周期
1、小程序初始化完成后,漏衡页面首次加载触发onLoad,只会触发一次。
2、当小程序进入到后台,先执行页面onHide方法再执行应用onHide方法。
3、当小程序从后台进入到前台,先执行应用onShow方法再执行页面onShow方法。
下面呈上3个微信小程序官方链接:
https://developers.weixin.qq.com/miniprogram/dev/framework/app-service/page-life-cycle.html
https://developers.weixin.qq.com/miniprogram/dev/reference/api/App.html
https://developers.weixin.qq.com/miniprogram/dev/reference/api/Page.html
看完你就怀疑人生,没错我也是,nonono,别着急,咱们接着往下看!-------gogogo!!!
第一个链接 :让你觉得,怎么这个完了,下个开始了,这个还没结束,那个也开始了
(这里涉及了一个概念:什么是生命周期,记住 生命周期---->开始到结束的时间范围 )
第二个链接 :
第三个链接:
这时候你大概知道这两个生命周期是不一样的了, 他们到底不一样在哪里 ? 又相互关联在哪里 ?
现在橡粗我们分 3条线 来理解小程序的生命周期
1:小程序生命周期
2:小程序页面生命周期
3:小程序生命周期和小程序页面生命周期关联在哪里
ps:我们只看和生命周期有关的方法!!!
1:小程序生命数昌周期
下面由这些同学为大家讲解生命周期
https://www.jianshu.com/p/3f43eaa83bbd
https://www.jianshu.com/p/2e48f2468d5f
从上面那个同学可以知道
1: 小程序 的生命周期函数的调用顺序为:onLaunch>onShow>onHide
2: 小程序页面 生命周期函数的调用顺序为:onLoad>onReady>onShow;至于onHide函数就是当隐藏页面的时候触发。
3:“ 小程序 生命周期函数”和“ 小程序页面 生命周期函数”的调梁毕镇用顺序;这两者之间的事件顺序一般如上图所示 小程序 周期函数 在前 , 页面 周期函数触发 在后 ;
小程序前台->后台->前台生命周期的调用顺序为:page.hide>app.hide>app.show>page.hide
什么???你还是不懂??亲亲麻烦创建一个项目理解一下
小程序的生命周期函数是一组函数,在小程序生命周期内按约定的顺序被调用。简单来说孙穗,生命周期函数就是在小程序的运行过程中自动执行的某些函数。这些函数在不同时期扮演不同的角色,比如在小程序启动时进行初始化,页面渲染时获取数据,页面切换时暂停和恢复等。小程序的生命周期函数有以下几个:1. `onLaunch`: 小程序初始化加载时的钩子函数,全局只触发一次。可以在此函数中获取小程序的启动参数、从缓存中获取数据等。
2. `onShow`: 小程序启动或从后台进入前台时触发。可以在此函数中获取小程序的路径参数、检查用户是否宴凯拿登录等。
3. `onHide`: 小程序从前台进入后台时触发。可以在此函数中暂停正在播放的音乐、记录页面状态等。
4. `onError`: 小程序发生错误时触发。可以在此函数中将报错信息发送给晌搭开发者,以便定位问题。
5. `onPageNotFound`: 小程序页面不存在时触发。可以在此函数中提示用户该页面不存在,或者自动跳转到其他页面。
除了以上五个生命周期函数,小程序中还有一些页面级别的生命周期函数,例如:
1. `onLoad`: 页面加载时触发,可以在此函数中获取页面路径参数、从服务器获取数据等。
2. `onReady`: 页面初次渲染完成时触发。可以在此函数中获取节点信息、动态计算布局等。
3. `onUnload`: 页面卸载时触发,可以在此函数中取消监听器、清除定时器等。
4. `onShareAppMessage`: 用户点击右上角转发按钮或分享到朋友圈时触发。可以在此函数中定义需要分享的内容、动态生成图片等。
总之,生命周期函数是小程序中非常重要的一部分,开发者需要在不同情况下适时地调用这些函数,实现一些必要的 *** 作。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)