1. 初识微信小程序生命周期函数
刚接触微信小程序开发时,很多人都会被各种生命周期函数搞得晕头转向。我自己刚开始写小程序的时候,就经常搞不清楚onLoad和onShow到底有什么区别,什么时候该用哪个。直到在实际项目中踩过几次坑,才真正理解了它们的妙用。
简单来说,生命周期函数就像是小程序的"人生阶段",从出生(创建)到死亡(销毁),每个阶段都有对应的函数会被触发。onLoad和onShow就是其中两个非常重要的函数,它们分别对应着页面加载和页面显示这两个关键节点。
举个例子,就像我们打开一本书:onLoad相当于第一次翻开这本书(初始化),而onShow则是每次把书拿到眼前准备阅读(显示)。理解这个区别非常重要,因为这会直接影响我们如何设计小程序的业务逻辑。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. onLoad函数的深度解析
2.1 onLoad的基本特性
onLoad是页面加载时触发的函数,它有几个非常重要的特点:
首先,它只会执行一次,就是在页面初次创建的时候。这就像我们买一部新手机,第一次开机设置的过程只会进行一次。
其次,它可以接收页面参数。比如我们从列表页跳转到详情页时,通常会传递一个ID参数,这个参数就是在onLoad中获取的。来看个实际代码示例:
javascript复制Page({
onLoad: function(options) {
// options就是从其他页面传递过来的参数
console.log('接收到的参数:', options);
const id = options.id;
this.loadDetailData(id); // 根据ID加载详情数据
},
loadDetailData: function(id) {
// 这里发起网络请求获取详情数据
}
})
2.2 onLoad的最佳实践场景
根据我的经验,onLoad最适合做以下几类事情:
- 初始化页面数据:比如设置默认值、初始化变量等
- 获取页面参数:处理从其他页面传递过来的参数
- 发起初始网络请求:获取页面首次展示需要的数据
- 执行一次性操作:比如记录页面访问日志等
需要注意的是,由于onLoad只会执行一次,所以不适合在这
