推荐答案
onLoad
和 onReady
是微信小程序页面生命周期中的两个重要函数,它们的区别主要体现在触发时机和用途上:
- onLoad:在页面加载时触发,通常用于初始化页面数据或接收页面参数。
- onReady:在页面初次渲染完成时触发,通常用于操作页面元素或执行与页面渲染相关的逻辑。
本题详细解读
onLoad
- 触发时机:页面加载时触发,且只会触发一次。
- 主要用途:
- 接收页面参数(通过
options
参数)。 - 初始化页面数据(如发起网络请求、设置初始状态等)。
- 接收页面参数(通过
- 示例代码:
Page({ onLoad(options) { // options 是从其他页面传递过来的参数 console.log('页面加载,参数为:', options); // 初始化数据 this.setData({ title: '首页' }); } });
onReady
- 触发时机:页面初次渲染完成时触发,且只会触发一次。
- 主要用途:
- 操作页面元素(如获取 DOM 节点、设置动画等)。
- 执行与页面渲染相关的逻辑(如初始化地图、图表等)。
- 示例代码:
-- -------------------- ---- ------- ------ --------- - -- ----------- --- ------- ----- ----- - ------------------------- -------------------------------------------------- -- - ---------------------- ------ ---------- - ---
总结对比
生命周期函数 | 触发时机 | 主要用途 |
---|---|---|
onLoad |
页面加载时 | 初始化数据、接收参数 |
onReady |
页面初次渲染完成时 | 操作页面元素、执行渲染相关逻辑 |
通过理解这两个生命周期的区别,可以更好地组织页面逻辑,确保在合适的时机执行相应的操作。