小程序生命周期

发布时间:2026/5/23 4:14:17

小程序生命周期 一、小程序生命周期分为哪几类小程序里常见有两种生命周期App 生命周期整个小程序Page 生命周期页面二、App 生命周期整个小程序写在 app.js里面onLaunch触发时机小程序初始化完成时全局只触发一次常用场景获取用户信息、登录、全局数据初始化onShow触发时机小程序启动或从后台进入前台时常用场景刷新数据、检查更新onHide触发时机小程序从前台进入后台时常用场景暂停定时器、保存数据onError触发时机小程序发生脚本错误时常用场景错误监控和上报onPageNotFound触发时机页面不存在时常用场景路由重定向、404处理三、页面生命周期Page页面生命周期指的是小程序中每个页面的生命周期过程。这些钩子函数定义在Page()方法中。onLoad触发时机页面加载时只触发一次常用场景接收参数、数据初始化、网络请求onShow触发时机页面显示时每次进入都触发常用场景刷新数据、更新状态onReady触发时机页面初次渲染完成时只触发一次常用场景获取节点信息、创建动画onHide触发时机页面隐藏时跳转或切后台常用场景暂停音视频、停止定时器onUnload触发时机页面卸载时关闭页面常用场景释放资源、清理监听onPullDownRefresh触发时机 用户下拉刷新时常用场景刷新列表数据onReachBottom触发时机 页面滚动到底部时常用场景加载更多数据onShareAppMessage触发时机 用户点击分享时常用场景自定义分享内容onPageScroll触发时机 页面滚动时常用场景导航栏渐变、返回顶部按钮onResize触发时机 页面尺寸变化时仅手机常用场景横竖屏适配四、常见问题与解决方案onLoad 和 onShow 区别onLoad页面首次加载时触发只触发一次适合做数据初始化onShow每次页面显示都触发包括首次和从后台切回页面返回为什么不执行 onLoad因为页面没有销毁只是隐藏了。所以返回时只触发 onShowonReachBottom 不触发怎么办// 检查以下几点Page({// 1. 检查页面高度是否足够滚动// 2. 检查是否设置了距离底部阈值onReachBottomDistance:100,// 距离底部100px时触发// 3. 检查是否有内容撑开页面// 4. 使用 scroll-view 组件时需要设置 scroll-y 和 bindscrolltolower})如何监听页面返回// 方案1使用 onShowPage({onShow(){// 每次页面显示都会触发包括从下级页面返回}})// 方案2使用页面栈和事件constpagesgetCurrentPages();constcurrentPagepages[pages.length-1];// 在下级页面调用上级页面方法currentPage.setData({needRefresh:true});页面首次进入会经历的生命周期页面首次进入 onLoad ↓ onShow ↓ onReady 页面跳转离开 onHide 页面关闭 onUnload

相关新闻