微信小程序各个生命周期
- 应用生命周期
- 页面生命周期
- 组件生命周期
1. 应用生命周期
App(Object object)
注册小程序。接受一个 Object
参数,其指定小程序的生命周期回调等。
App() 必须在 app.js
中调用,必须调用且只能调用一次。不然会出现无法预期的后果。
属性 | 类型 | 说明 |
---|---|---|
onLaunch(Object object) | function | 小程序初始化完成时触发,全局只触发一次。参数也可以使用 wx.getLaunchOptionsSync 获取。 |
onShow(Object object) | function | 小程序启动,或从后台进入前台显示时触发。也可以使用 wx.onAppShow 绑定监听。 |
onHide() | function | 小程序从前台进入后台时触发。也可以使用 wx.onAppHide 绑定监听。 |
onError(String error) | function | 小程序发生脚本错误或 API 调用报错时触发。也可以使用 wx.onError 绑定监听。 |
onPageNotFound(Object object) | function | 小程序要打开的页面不存在时触发。也可以使用 wx.onPageNotFound 绑定监听。注意事项请参考 wx.onPageNotFound |
onUnhandledRejection(Object object) | function | 小程序有未处理的 Promise 拒绝时触发。也可以使用 wx.onUnhandledRejection 绑定监听。注意事项请参考 wx.onUnhandledRejection。 |
onThemeChange(Object object) | function | 系统切换主题时触发。也可以使用 wx.onThemeChange 绑定监听。 |
示例代码
App({
onLaunch (options) {
//
console.log('小程序初始化')
},
onShow(options) {
console.log('监听小程序启动或切前台')
},
onHide() {
console.log('监听小程序切后台')
},
onError(msg) {
console.log('错误监听函数')
},
onPageNotFound(res) {
console.log('小程序要打开的页面不存在时触发');
wx.redirectTo({ // 重定向
url: 'pages/...'
}) // 如果是 tabbar 页面,请使用 wx.switchTab
}
})