微信小程序(小程序生命周期、运行机制、场景值)

目录

  • (1)程序构造/注册器App()
  • (2)小程序生命周期
  • (3)小程序运行机制
  • (4)scene场景值

体验版特定页面设置

  • 体验人员扫描二维码进入时有时进入的不是首页???
    微信小程序(小程序生命周期、运行机制、场景值)
  • 方案:
  • 登录小程序后台,重新设置体验版打开时的特定页面路径,更换为当前首页即可
    微信小程序(小程序生命周期、运行机制、场景值)

程序构造/注册器App()

  • 注册器/构造器分类:
  • 小程序级别:App-----程序构造器/注册器
  • 页面级别:Page------页面构造器/注册器
  • 小程序的生命周期:
    微信小程序(小程序生命周期、运行机制、场景值)
  • App() 参数
  • App构造器接受一个Object参数
    微信小程序(小程序生命周期、运行机制、场景值)
  • 基础App构造器案例

微信小程序(小程序生命周期、运行机制、场景值)

小程序生命周期

  • ①onLaunch 生命周期函数–监听小程序初始化

  • 当小程序初始化完成时,会触发 onLaunch(全局只触发一次)

  • **②onShow 生命周期函数–监听小程序显示 **

  • 当小程序启动,或从后台进入前台显示,会触发 onShow

  • **③onHide 生命周期函数–监听小程序隐藏 **

  • 当小程序从前台进入后台,会触发 onHide

  • 接下来依次验证下
    微信小程序(小程序生命周期、运行机制、场景值)

  • **(1)监听小程序初始化与显示 **
    微信小程序(小程序生命周期、运行机制、场景值)

  • (2)监听小程序切换后台
    微信小程序(小程序生命周期、运行机制、场景值)

  • (3)监听小程序切换前台
    微信小程序(小程序生命周期、运行机制、场景值)
    微信小程序(小程序生命周期、运行机制、场景值)

  • 从该步骤可以看出

  • ①小程序生命周期中onLaunch初始化只执行一次,之后便不再执行。

  • ②小程序从前台切换到后台会触发onHide隐藏,之后再从后台切换回前台页面时会触发onShow显示

  • 从以上便可分析出

  • 小程序的生命周期函数的调用顺序为:

  • onLaunch>onShow>onHide

  • 小程序初始化→小程序显示→小程序隐藏

小程序运行机制

  • (1)小程序启动
  • 小程序启动有两种情况,一种是==「冷启动」,一种是「热启动」==。
  • ①热启动:假如用户已经打开过该小程序,然后在一定时间内再次打开,此时无需重新启动,只需将后台小程序切换到前台,该过程就是热启动;

微信小程序(小程序生命周期、运行机制、场景值)

  • ②冷启动:用户首次打开或小程序主动销毁后再次打开的情况,此时小程序需要重新加载启动,即冷启动。
    微信小程序(小程序生命周期、运行机制、场景值)
  • 前台/后台状态
  • 前台→后台—onHide
  • 当用户点击右上角胶囊按钮关闭小程序,或者按了设备 Home 键离开微信时,小程序并没有直接销毁,而是进入了后台状态;
  • 后台→前台—onShow
  • 当用户再次进入微信或再次打开小程序,小程序又会从后台进入前台。
  • 小程序销毁
  • 只有当小程序进入后台一定时间,或者系统资源占用过高,才会被真正的销毁。
  • ①当小程序进入后台,客户端会维持一段时间的运行状态,超过一定时间后(目前是5分钟)小程序会被微信主动销毁。
  • ②当小程序占用系统资源过高,可能会被系统销毁或被微信客户端主动回收

小程序生命周期

  • (1)onLaunch初始化
  • 初次进入小程序的时候,微信客户端初始化好宿主环境,同时从网络下载或者从本地缓存中拿到小程序的代码包,把它注入到宿主环境
  • 初始化完毕后,微信客户端就会给App实例派发onLaunch事件,App构造器参数所定义的onLaunch方法会被调用。
  • (2)onShow小程序显示
  • 在初始化完毕之后,会调用onShow钩子函数,监听显示
  • (3)onHide小程序进入后台状态
  • 进入小程序之后,用户可以点击右上角的关闭或者按手机设备的Home键离开小程序,此时小程序并没有被直接销毁
  • 我们把这种情况称为“小程序进入后台状态—后台态”,App构造器参数所定义的onHide方法会被调用。
  • (4)onShow小程序进入前台状态:后台→前台
  • 当再次回到微信或者再次打开小程序时,微信客户端会把“后台”的小程序唤醒
  • 我们把这种情况称为“小程序进入前台状态”,App构造器参数所定义的onShow方法会被调用。
  • 小结:
  • 综上可以看出,App的生命周期是由微信客户端根据用户操作主动触发的。为了避免程序上的混乱,避免从其他代码里调用App实例的生命周期函数。
  • onLaunch, onShow 方法会返回一个参数对象, 里面包含了多个参数 , 常用到的有path,query和scene
  • 参数:
  • ①path是打开小程序的页面路径
  • ②query是打开小程序页面url的参数,后续介绍
  • ③scene是打开小程序的场景值

scene场景值

  • scene场景值作用:
  • 场景值用来描述用户进入小程序的路径
  • 缘由:
  • 由于系统限制,目前还无法获取到按 Home 键退出到桌面,然后从桌面再次进小程序的场景值,对于这种情况,会保留上一次的场景值。

完毕,有问题请留言小编!