微信小程序开发:生命周期
一、应用的生命周期
1、系统函数说明
App()
函数用来注册一个小程序,接收一个object
函数,其指定小程序的生命周期函数等。此函数位于app.js
文件中,整个微信小程序中只有一个。
属性 | 作用 | 说明 |
---|---|---|
onLaunch | 监听小程序初始化 | 小程序初始化完成时触发,全局只触发一次 |
onShow | 监听小程序启动或切换前台 | 小程序启动或从后台进入前台时触发 |
onHide | 监听小程序切后台 | 小程序从前台进入后台时触发 |
onError | 错误函数监听 | 小程序发生脚本错误或API调用报错时触发 |
onPageNotFound | 页面不存在监听函数 | |
onUnhandledRejection | 未处理的Promise拒绝事件监听函数 |
2、热启动与冷启动
热启动: 当用户点击小程序右上角关闭或者按设备HOME健离开微信,小程序并没有直接销毁,而是触发onHide
方法进入了后台,短时间内当再次进入微信或者再次打开小程序,小程序会从后台状态进入前台,此为热启动。
冷启动: 小程序进入后台一定时间后,或者系统资源占用过高,微信会真正销毁小程序。用户第一次进入小程序或者在小程序销毁后再次进入小程序此为冷启动。
小程序冷启动:小程序在冷启动时会依次触发onLaunch
——> onShow
小程序热启动:小程序在热启动时会触发onShow
小程序关闭:即小程序从前台进入后台时触发onHide
二、页面的生命周期
Page()
函数用来注册一个页面,接收一个object参数,指定页面的初始化数据,生命周期函数,事件处理函数等。
属性 | 作用 | 说明 |
---|---|---|
data | 页面等初始数据 | 页面第一次渲染使用的初始数据 |
onLoad | 监听页面的加载 | 页面加载时触发,一个页面只会调用一次 |
onShow | 监听页面的显示 | 页面显示或切入前台时触发 |
onReady | 监听页面初次渲染完成 | 页面初次渲染完成时触发,一个页面只会调用一次,代表页面已经准备妥当,可以和视图层进行交互 |
onHide | 监听页面隐藏 | 页面隐藏或者切入后台时触发 |
onUnload | 监听页面卸载 | 页面卸载时触发 |
onPullDownRefresh | 监听用户下拉动作 | |
onReachBottom | 页面上拉触底事件的处理函数 | |
onShareAppMessage | 用户点击右上角转发 | |
onPageScroll | 页面滚动触发事件的处理函数 | |
onResize | 页面尺寸改变时触发 | |
onTabItemTab | 当前是tab页时,点击tab时触发 |