小程序生命周期分为 3 类
- 应用生命周期
App()
- 页面生命周期
Page()
- 组件生命周期
Component()
- 官方手册:https://developers.weixin.qq.com/miniprogram/dev/reference/api/App.html
应用生命周期
官方手册:https://developers.weixin.qq.com/miniprogram/dev/reference/api/App.html
App()
必须在app.js
中调用,必须调用且只能调用一次。- 在项目中可通过
getApp()
获取到小程序App
实例。
属性 | 类型 | 必填 | 说明 |
---|---|---|---|
onLaunch | function | 否 | 生命周期回调——小程序初始化完成时触发,全局只触发一次。 |
onShow | function | 否 | 生命周期回调——监听小程序启动或切前台。 |
onHide | function | 否 | 生命周期回调——监听小程序切后台(最小化)。 |
页面生命周期
官方手册:https://developers.weixin.qq.com/miniprogram/dev/reference/api/Page.html
Page()
注册小程序中的一个页面。指定页面的初始数据、生命周期回调、事件处理函数等。- 在项目中可通过
getCurrentPages()
获取小程序页面栈,页面栈存储的其实就是页面的实例。
属性 | 说明 | 备注 |
---|---|---|
onLoad | 生命周期回调—监听页面加载 | 页面在初次打开的时候触发一次 ,适合页面数据请求。 |
onUnload | 生命周期回调—监听页面卸载 | 普通页跳转到 tabBar 页的时候触发,普通页会被卸载。 |
onHide | 生命周期回调—监听页面隐藏 | 应用切后台,或者跳转到普通页。 |
onShow | 生命周期回调—监听页面显示 | 页面每次显示都触发 ,如购物车每次显示都希望用最新的数据。 |
- 其实最常用的生命周期就是
onLoad
,一般在onLoad
中发送网络请求。 tabBar
页其实不会被卸载掉,打开过的tabBar页
都会在内存中,所以切换很顺畅。
app.js 数据可供去全局使用