微信小程序开发–生命周期
前言
小程序的生命周期分为两个循环部分,一部分是整个项目的生命周期也叫小程序生命,从前台到后台;另一部分是页面的生命周期,从初始化到销毁。一、项目的生命周期(小程序生命周期)
- onLaunch: 全局只调用一次(逻辑只执行一次) ;
- onShow: 应用初始化完成; 从后台切换到前台;
- onHide: 从前台切换到后台(小程序应用转到别的应用)。
App({
onLaunch (options) {
// Do something initial when launch.
},
onShow (options) {
// Do something when show.
},
onHide () {
// Do something when hide.
},
onError (msg) {
console.log(msg)
},
globalData: 'I am global data'
})
二、页面的生命周期
- onLoad: 小程序注册完成后,加载页面,一个页面只会调用一次;
- onShow: 页面载入后,显示页面,每次打开页面都会调用一次;
- onReady: 首次显示页面,会触发onReady方法,渲染页面元素和样式,一个页面只会调用一次;
- onHide:小程序后台运行或跳转到其他页面时,触发onHide方;
- onUnload:当使用重定向方法wx.redirectTo(OBJECT)或关闭当前页返回上一页
wx.navigateBack(),触发onUnload, 页面卸载(内存释放)
//index.js
Page({
data: {
text: "This is page data."
},
onLoad: function(options) { // 页面创建时执行
},
onShow: function() {
// 页面出现在前台时执行 },
onReady: function() { // 页面首次渲染完毕时执行
},
onHide: function() {
// 页面从前台变为后台时执行 },
onUnload: function() { // 页面销毁时执行
} })
三、小程序的启动流程
1、小程序初始化完成后,页面首次加载触发onLoad,只会触发一次。
2、当小程序进入到后台,先执行页面onHide方法再执行应用onHide方法。
3、当小程序从后台进入到前台,先执行应用onShow方法再执行页面onShow方法。