一、小程序的生命周期
应用生命周期
应用生命周期 指得是小程序本身的初始化加载、方法以及最终被销毁的过程。
属性 | 类型 | 描述 | 触发时机 |
---|---|---|---|
onLaunch | Function | 生命周期函数–监听小程序初始化 | 当小程序初始化完成时,会触发 onLaunch(全局只触发一次) |
onShow | Function | 生命周期函数–监听小程序显示 | 当小程序启动,或从后台进入前台显示,会触发 onShow |
onHide | Function | 生命周期函数–监听小程序隐藏 | 当小程序从前台进入后台,会触发 onHide |
-
用户首次打开小程序,触发
onLaunch
,用于监听小程序初始化,整个应用生命周期中只触发一次; -
初始化之后,触发
onShow
监听小程序显示,小程序启动或从后台进入前台显示,会触发 onShow; -
小程序用前台进入后台,触发
onHide
方法; -
小程序在后台允许一定时间,或者系统资源占用过高,会被销毁;
示例:
App({
onLaunch: function() {
// Do something initial when launch.
},
onShow: function() {
// Do something when show.
},
onHide: function() {
// Do something when hide.
},
onError: function(msg) {
console.log(msg)
},
globalData: 'I am a girl'
})
var appInstance = getApp()
console.log(appInstance.globalData) // I am a girl
页面的生命周期
属性 | 类型 | 描述 |
---|---|---|
data | Object | 页面的初始数据 |
onLoad | Function | 生命周期函数–监听页面加载 |
onReady | Function | 生命周期函数–监听页面初次渲染完成 |
onShow | Function | 生命周期函数–监听页面显示 |
onHide | Function | 生命周期函数–监听页面隐藏 |
onUnload | Function | 生命周期函数–监听页面卸载 |
小程序的页面生命周期是指程序内部某个页面从进入到离开
或某个页面到另一个页面的过程
。
-
小程序注册完成后,加载页面,触发
onLoad方法
,一个页面只会调用一次。 -
页面载入后触发
onShow方法
,显示页面,每次打开页面都会调用一次。 -
首次显示页面,会触发
onReady方法
,渲染页面元素和样式,一个页面只会调用一次。 -
当小程序后台运行或跳转到其他页面时,触发
onHide方法
。 -
当小程序有后台进入到前台运行或重新进入页面时,触发
onShow方法
。
示例:
Page({
data: {
text: "This is page data."
},
onLoad: function(options) {
// Do some initialize when page load.
},
onReady: function() {
// Do something when page ready.
},
onShow: function() {
// Do something when page show.
},
onHide: function() {
// Do something when page hide.
},
onUnload: function() {
// Do something when page close.
},
onPullDownRefresh: function() {
// Do something when pull down.
},
onReachBottom: function() {
// Do something when page reach bottom.
},
onShareAppMessage: function () {
// return custom share data when user share.
},
// Event handler.
viewTap: function() {
this.setData({
text: 'Set some data for updating view.'
})
},
})
应用生命周期影响页面生命周期
1、小程序初始化完成后,页面首次加载触发onLoad
,只会触发一次。
2、当小程序进入到后台,先执行页面onHide方法
再执行应用onHide方法
。
3、当小程序从后台进入到前台,先执行应用
onShow方法再执行页面
onShow方法。