小程序生命周期

全局生命周期:

周期 触发时间 参数 执行顺序
onLaunch(option){} //初始化完成(全局只触发一次) 带参数 1
onShow(option){} //启动或从进入前台时触发,每次都会触发 带参数 2
onHide(){} // 小程序进入后台时触发
参数: 路径,参数,场景值,来源及来源参数。。。
page生命周期:
周期 说明 触发时间 执行顺序 参数
onLoad(option){} 页面加载 (触发1次) 初始化的时候触发、被销毁后进入触发 1 带参数
onShow (){} 页面显示 进入时触发、由下一页返回当前页的时候 2
onReady(){} 页面初次渲染完成(触发1次) 初次渲染完成时触发、被销毁后进入页面渲染完成时触发 3
onHide(){} 页面隐藏 进入下一页
onUnload(){} 页面卸载(被销毁) 返回上一页的时候、跳转tabbar页的时候
onPullDownRefresh(){} 下拉事件
onReachBottom(){} 上拉触底事件
onPageScroll(){} 页面滚动触发事
onShareAppMessage(){} 右上角转发事件
路由方式 api 跳转前页面 跳转后页面
初始化 首页 目的页面的onLoad, onShow
打开新页面 wx.navigateTo 当前页的 onHide 目的页面的 onLoad, onShow,onReady
页面重定向 wx.redirectTo 当前页的 onUnload 目的页面的onLoad, onShow,onReady
页面返回 wx.navigateBack 当前页的 onUnload 目的页面的 onShow
重启动 wx.reLaunch 页面栈的 onUnload 目的页面的onLoad, onShow ,onReady
Tab 切换 wx.switchTab 页面栈里出tabber外的其他页面onUnload 目的页面的onLoad(没打开的情况)、 onShow
【小程序生命周期】tabbarA页 -- tabbarB页(没打开过): 页面栈里出tabber外的其他页面onUnload,tabA的onHide,tabB的 onLoad, onShow,onReady
abbarA页 -- tabbarB页(打开过):页面栈里出tabber外的其他页面onUnload,tabA的onHide,tabB的 onShow
page页 -- tabbar页:页面栈里出tabber外的其他页面onUnload,tab页的 onLoad, onShow,onReady
  • 更新小程序
  • 禁止页面滑动
// 在加载时更新小程序 //App.js里的 onLaunch 周期里启用 renewalcode: function() { var e = wx.getUpdateManager(); e.onCheckForUpdate(function(n) { // console.log(n.hasUpdate); }) e.onUpdateReady(function() { wx.showModal({ title: "更新提示", content: "新版本已经准备好,是否重启应用?", success: function(n) { n.confirm && e.applyUpdate() } }) }) e.onUpdateFailed(function() {}); }

// 禁止页面滑动(页面有大于一页的数据候也不会滑动) 在page.json 增加 "disableScroll": true

    推荐阅读