小程序 包括三个生命周期1、小程序的生命周期 2、页面的生命周期 3、组件的生命周期
一、小程序的命周期
// 当小程序初始化完成时会触发(全局只会触发一次)
onLaunch(){}
// 当小程序启动,或从后台进入前台显示 会触发
onShow() {}
// 从前台进入后台时
onHide() {}
// 小程序脚本发生错误,或者api调用失败时
onError(){}
二、页面的生命周期
// 页面加载 一个页面只会调用一次 接收页面参数 wx.nacigateTo 和 wx.redirectTo
onLoad(){}
// 页面显示 每次打开页面都会调用
onShow(){}
// 页面初次渲染成功 只会调用一次 代表页面已经准备完 可以和是图层进行交互
onReady(){}
// 页面隐藏 当navigateTo 或者底部tab切换的时候
onHide(){}
// 页面卸载 当热directTo或navigateBack的时候调用
onUnload(){}
三、组件的生命周期
// 组建的生命周期 可以写在component构造器的第一级参数中,也可以卸载lifetimes中 但推荐这种
// 组件刚刚被创建时
component({
lifetimes : {
// 在举荐实例刚刚被创建时执行
created() {},
// 在组件实例进入页面节点树时执行
attached(){},
// 在是图层布局完成之后执行
ready(){},
// 在组件实例被移动到节点树另一个位置时执行
moved(){},
// 组件被从节点树移除时
detached(){},
// 抛出错误时
error(){}
}
})
还有一些特殊的生命周期
组件所在页面的生命周期 在pageLifetimes 中定义
component({
pageLifetimes: {}
// 组件所在页面被展示时
show(){},
// 组件所在页面被隐藏时
hide(){},
// 组件所在页面尺寸发生变化时
resize(){}
})
参考文档
https://blog.youkuaiyun.com/qq_26585943/article/details/54407202
https://developers.weixin.qq.com/miniprogram/dev/framework/custom-component/lifetimes.html?q=