全局生命周期:
周期 |
触发时间 |
参数 |
执行顺序 |
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
网友评论