1. 小程序生命周期
-
onLaunch
--监听小程序初始化 当小程序初始化完成时,会触发 onLaunch(全局只触发一次)
-
onShow
--监听小程序显示 当小程序启动,或从后台进入前台显示,会触发 onShow
-
onHide
--监听小程序隐藏 当小程序从前台进入后台,会触发 onHide
-
onError
-- 错误监听函数 当小程序发生脚本错误,或者 api 调用失败时,会触发 onError 并带上错误信息
- 应用生命周期仅可在
App.vue
中监听,在其它页面监听无效
2. 页面生命周期
Page({
data:{
},
onLoad:function(options){ // 用于加载数据,监听页面加载,获取传递到本页面的参数。
console.log("onLoad");
},
onReady:function(){ // 监听页面初次渲染完成
console.log("onReady");
},
onShow:function(){ // 用于绑定数据,监听页面显示,SetData()使用
console.log("onShow");
},
onHide:function(){ // 监听页面隐藏
console.log("onHide");
},
onUnload:function(){ // 监听页面卸载
console.log("onUnload");
},
onPullDownRefresh: function() { // 页面相关事件处理函数--监听用户下拉动作
console.log("onPullDownRefresh");
},
onReachBottom: function() { // 页面上拉触底事件的处理函数
console.log("onReachBottom");
},
onShareAppMessage: function () { // 监听用户点击右上角分享
}
})
3. 组件生命周期
-
created
— 组件在内存中创建完毕执行
-
attached
— 组件挂载之前执行
-
ready
— 组件挂载后执行
-
detached
— 组件移除执行
-
moved
— 组件移动的时候执行
具体说明:
-
created
— 组件实例化,但节点树还未导入,因此这时不能用setData
-
attached
— 节点树完成,可以用setData渲染节点,但无法操作节点
-
ready(不是onReady)
— 组件布局完成,这时可以获取节点信息,也可以操作节点
-
moved
— 组件实例被移动到树的另一个位置
detached
— 组件实例从节点树中移除
微信小程序各类生命周期