1. 什么是生命周期
生命周期(Life Cycle)是指一个对象从创建 -> 运行 -> 销毁的整个阶段,强调的是一个时间段。
例如:
- 张三出生,表示这个人生命周期的开始
- 张三离世,表示这个人生命周期的结束
- 中间张三的一生,就是张三的生命周期
我们可以把每个小程序运行的过程,也概括为生命周期:
- 小程序的启动,表示生命周期的开始
- 小程序的关闭,表示生命周期的结束
- 中间小程序运行的过程,就是小程序的生命周期
2. 生命周期的分类
在小程序中,生命周期分为两类,分别是:
- 应用生命周期
特指小程序从启动 -> 运行 -> 销毁的过程 - 页面生命周期
特指小程序中,每个页面的加载 -> 渲染 -> 销毁的过程
其中,页面的生命周期范围较小,应用程序的生命周期范围较大,如图所示:
3. 什么是生命周期函数
生命周期函数:
是由小程序框架提供的内置函数,会伴随着生命周期,自动按次序执行。
生命周期函数的作用:
允许程序员在特定的时间点,执行某些特定的操作。
例如,页面刚加载的时候,可以在 onLoad 生命周期函数中初始化页面的数据。
注意:
生命周期强调的是时间段,生命周期函数强调的是时间点。
4. 生命周期函数的分类
小程序中的生命周期函数分为两类,分别是:
- 应用的生命周期函数
特指小程序从启动 -> 运行 -> 销毁期间依次调用的那些函数 - 页面的生命周期函数
特指小程序中,每个页面从加载 -> 渲染 -> 销毁期间依次调用的那些函数
5. 应用的生命周期函数
小程序的应用生命周期函数需要在 app.js 中进行声明
// app.js App({ // 小程序初始化完成时,执行此函数,全局只触发一次 onLaunch() { console.log('小程序初始化完成时,执行此函数,全局只触发一次') }, // 小程序启动,或从后台进入前台触发 onShow() { console.log('小程序启动,或从后台进入前台触发') }, // 小程序从前台进入后台 onHide() { console.log('小程序从前台进入后台') } })
6. 页面的生命周期函数
小程序的页面生命周期函数需要在页面的 .js 文件中进行声明
// pages/home/home.js Page({ // 页面加载时调用 onLoad() { console.log('页面加载时调用') }, // 页面显示时调用 onShow() { console.log('页面显示时调用') }, // 页面初次渲染完成 onReady() { console.log('页面初次渲染完成') }, // 页面隐藏 onHide() { console.log('页面隐藏') }, // 页面卸载 onUnload() { console.log('页面卸载') } })