生命周期执行程序
app 生命周期
冷启动:用户首次关上或小程序被微信被动销毁后再次关上的状况,此时小程序须要从新加载启动。
热启动: 用户曾经关上过小程序,在肯定工夫内再次关上该小程序,此时无需重新启动。只需将后盾态的小程序切换到前台,这个过程就是热启动
onLaunch
:小程序初始化实现(冷启动)时触发onShow
: 小程序热启动时触发onHide
:小程序从前台进入后盾触发onError
:小程序产生脚本谬误时触发onPageNotFound
:要关上的页面不存在时触发
page 页面生命周期
onLoad
:页面加载时触发,只会首次渲染的时候执行一次onReady
: 页面首次渲染实现时触发,只会首次渲染的时候执行一次。该生命周期示意此时页面曾经能够和视图层产生交互onShow
:每次关上页面时都触发,当 navigateTo 或底部 tab 切换时调用onHide
:当页面暗藏时触发,当 redirectTo 或 navigateBack 的时候调用onUnload
:当页面卸载时触发,当 redirectTo 或 navigateBack 的时候调用onPullDownRefresh
:当用户下拉刷新事件时触发onReachBottom
:当用户上拉触底事件时触发onShareAppMessage
:当用户转发页面时触发onPageScroll
:当用户滑动页面时触发onResize
:当屏幕
component 组件生命周期
lifetimes 中的生命周期:
created
:组件实例化时触发,此时还不能够与操作节点与更改数据attached
:组件实例进入页面节点树时触发,此能够更改数据,但还不能够操作视图层构造ready
:组件在页面视图层实现布局后触发,此时能够操作视图层构造moved
:当组件实例被移到页面节点树其余地位时触发detached
:当组件实例被页面节点树中移除时触发error
:当组件出错时触发
pageLifetimes 中的生命周期:
show
:组件所在页面被展现时触发hide
:组件所在的页面被暗藏时触发resize
:组件所在的页面尺寸变动时触发
三者之间的生命周期程序
app 与 page
## 程序初始化
App onLaunch
App onShow
Page onLoad
Page onShow
Page onReady
## 程序进入后盾
Page onHide
App onHide
page 与 component
## 页面显示
Component created
Component attached
Page onLoad
Page onShow
Component ready
Page onReady
## 页面销毁
Page onUnload
Component detached
上拉刷新、下拉加载的实现
次要利用 page 的 onPullDownRefresh
和onReachBottom
生命周期来实现。
- 在
onPullDownRefresh
中刷新数据 - 在
onReachBottom
中获取下一分页的数据