一、生命周期
1.应用的生命周期
-
概念:特指小程序从启动-->运行-->销毁的过程。
-
在app.js中进行声明。
-
常见的应用生命周期函数:
// app.js文件 App({ // 小程序初始化完成时,执行此函数,全局只触发一次,可以做一些初始化工作 onLaunch: function (options) {}, // 小程序启动,或从后台进入前台显示时触发 onShow: function (options) {}, // 小程序从前台进入后台时触发 onHide: function () {} })
2.页面的生命周期
-
概念:特指小程序中,每个页面的加载-->渲染-->销毁的过程。
-
在页面对应的.js中声明。
-
常见的应用生命周期函数:
// 页面的.js文件 Page({ // 监听页面加载,一个页面只调用一次 onl oad: function (options) {}, // 监听页面显示 onShow: function () {}, // 监听页面初次渲染完成,一个页面只调用一次 onReady: function () {}, // 监听页面隐藏 onHide: function () {}, // 监听页面卸载,一个页面只调用一次 onUnload: function () {} })
3.组件的生命周期
生命周期函数 | 参数 | 描述说明 |
---|---|---|
created | 无 | 在组件实例刚刚被创建时执行 |
attached | 无 | 在组件实例进入页面节点树时执行 |
ready | 无 | 在组件在视图层布局完成后执行 |
moved | 无 | 在组件实例被移到到节点树另一个位置时执行 |
detached | 无 | 在组件实例被从页面节点树移除时执行 |
error | Object Error | 每当组件方法抛出错误时执行 |
二、生命周期函数
1.应用的生命周期函数
-
小程序的生命周期函数是在app.js里面调用的,通过App(Object)函数用来注册一个小程序,指定其小程序的生命周期回调。
生命周期函数 说明 onLaunch 小程序初始化完成时触发,全局只触发一次 onShow 小程序启动,或从后台进入前台显示时触发 onHide 小程序从前台进入后台时触发 onError 小程序发生脚本错误或API调用报错时触发 onPageNotFound 小程序要打开的页面不存在时触发 onUnhandledRejection() 小程序有未处理的Promise拒绝时触发 onThemeChange 系统切换主题时触发
2.页面的生命周期函数
-
页面生命周期函数就是当你每进入/切换到一个新的页面的时候,就会调用的生命周期函数,通过page(Object)函数用来注册一个页面。
生命周期函数 说明 作用 onLoad 监听页面加载 发送请求获取数据 onShow 监听页面显示 请求数据 onReady 监听页面初次渲染完成 获取页面元素(少用) onHide 监听页面隐藏 终止任务,如定时器或播放音乐 onUnload 监听页面卸载 终止任务
3.组件的生命周期函数
- 组件的生命周期,指的是组件自身的一些函数,这些函数在特殊的时间点或遇到一些特殊的框架事件时被自动触发,通过Component(Object)进行注册组件。
- 组件实例刚刚被创建好时,created生命周期被触发,此时,组件数据 this.data 就是在Component构造器中定义的数据data, 此时不能调用setData。
- 在组件完全初始化完毕、进入页面节点树后, attached 生命周期被触发。此时, this.data 已被初始化为组件的当前值。这个生命周期很有用,绝大多数初始化工作可以在这个时机进行。
- 在组件离开页面节点树后, detached 生命周期被触发。退出一个页面时,如果组件还在页面节点树中,则detached会被触发。
生命周期函数 | 说明 |
---|---|
created | 监听页面加载 |
attached | 监听页面显示 |
ready | 监听页面初次渲染完成 |
moved | 监听页面隐藏 |
detached | 监听页面卸载 |
error | 每当组件方法抛出错误时执行 |
-
组件中特殊的生命周期函数
-
还有一些特殊的生命周期,它们并非与组件有很强的关联,但有时组件需要获知,以便组件内部处理,这样的生命周期称为“组件所在页面的生命周期”,在 pageLifetimes 定义段中定义。
生命周期函数 参数 描述 show 无 组件所在的页面被展示时执行 hide 无 组件所在的页面被隐藏时执行 resize Object Size 组件所在的页面尺寸变化时执行
-