小程序--应用生命周期

小程序的应用周期处理逻辑都写在app.js中。

一、onLaunch

小程序启动时(初始化完成)执行,只执行一次。

常用于小程序更新,获取启动参数,获取场景值。

二、onShow

小程序启动,或从后台切换至前台时执行。

三、onHide

小程序隐藏,或从前台切换至后台时执行。

javascript 复制代码
App({
  // 小程序初始化完成时触发,全局只触发一次
  onLaunch() {
    console.log('onLaunch')
  },
  // 小程序启动,或从后台进入前台时
  onShow() {
    console.log('onShow')
  },
  // 小程序从前台进入后台时
  onHide() {
    console.log('onHide')
  }
})

四、小程序获取场景值和参数

javascript 复制代码
App({
  // 小程序初始化完成时触发,全局只触发一次
  onLaunch(options) {
    console.log('onLaunch')
    // options 对象,包含场景值、参数等
    // options.scene 场景值
    // options.query 参数
    console.log(options)
  },
  // 小程序启动,或从后台进入前台时
  onShow(options) {
    console.log('onShow')
    console.log(options)
  },
  // 小程序从前台进入后台时
  onHide() {
    console.log('onHide')
  }
})

五、小程序更新

javascript 复制代码
App({
  onLaunch(options) {
    this.checkUpdate()
  },
  checkUpdate() {
    // 获取版本更新管理器
    const updateManager = wx.getUpdateManager()
    // 检查更新结果
    updateManager.onCheckForUpdate(function (res) {
      // 是否有更新
      console.log(res.hasUpdate)
    })
    // 监听小程序有版本更新事件
    updateManager.onUpdateReady(function () {
      // 客户端主动触发下载(无需开发者触发下载,只需要做引导重启的提示即可)
      wx.showModal({
        title: '更新提示',
        content: '新版本已经准备好,是否重启应用?',
        success: function (res) {
          if (res.confirm) {
            // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
            updateManager.applyUpdate()
          }
        },
      })
    })
  },
})
相关推荐
游戏开发爱好者85 小时前
日常开发与测试的 App 测试方法、查看设备状态、实时日志、应用数据
android·ios·小程序·https·uni-app·iphone·webview
2501_915106326 小时前
app 上架过程,安装包准备、证书与描述文件管理、安装测试、上传
android·ios·小程序·https·uni-app·iphone·webview
2501_915106327 小时前
使用 Sniffmaster TCP 抓包和 Wireshark 网络分析
网络协议·tcp/ip·ios·小程序·uni-app·wireshark·iphone
宠友信息8 小时前
2025社交+IM及时通讯社区APP仿小红书小程序
java·spring boot·小程序·uni-app·web app
光影少年1 天前
AIGC + Taro / 小程序
小程序·aigc·taro
2501_915918411 天前
在 iOS 环境下查看 App 详细信息与文件目录
android·ios·小程序·https·uni-app·iphone·webview
2501_916007471 天前
没有 Mac 用户如何上架 App Store,IPA生成、证书与描述文件管理、跨平台上传
android·macos·ios·小程序·uni-app·iphone·webview
天空属于哈夫克31 天前
Go 语言实战:构建一个企微外部群“技术贴收藏夹”小程序后端
小程序·golang·企业微信
菜鸟una1 天前
【微信小程序+Taro 3+NutUI 3】input (nut-input) 、 textarea (nut-texteare)类型使用避坑
前端·vue.js·微信小程序·小程序·taro
计算机毕设指导61 天前
基于微信小程序的校园二手交易系统【源码文末联系】
java·spring boot·spring·微信小程序·小程序·tomcat·maven