前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >小程序 — 小程序生命周期及页面生命周期

小程序 — 小程序生命周期及页面生命周期

作者头像
前端老鸟
发布2019-07-31 17:12:57
4420
发布2019-07-31 17:12:57
举报
文章被收录于专栏:front-end technologyfront-end technology

前言:很多同学容易将小程序生命周期和页面的生命周期混淆为一起,这两个其实应该是不同却又相互关联的生命周期,所以,用实际代码操作并结合官方理论讲讲这个,好好捋捋。

1、小程序生命周期

(1)首先小程序的生命周期函数是在app.js里面调用的,App(Object)函数用来注册一个小程序。接受一个 Object 参数,指定其小程序的生命周期回调;一般有onLaunch监听小程序初始化、onShow监听小程序显示、onHide监听小程序隐藏等生命周期回调函数。

(2)看文字对概念有点模糊对不对?理解概念的最好方法就是上手实际操作一遍。那么,我们来看看当打开一个小程序的时候,到底是onLaunch、onShow、onHide哪个先调用以及什么时候开始调用的。

onLaunch() { console.log('onLaunch监听小程序初始化'); }

onShow() { console.log('onShow监听小程序显示'); }

onHide() { console.log('onLaunch监听小程序隐藏'); }

打开小程序

点击右上角按钮隐藏小程序有再次进入

(3)从中我们可以知道小程序的生命周期函数的调用顺序为:onLaunch>onShow>onHide

2、页面的生命周期

(1)页面生命周期函数就是当你每进入/切换到一个新的页面的时候,就会调用的生命周期函数。Page(Object) 函数用来注册一个页面。接受一个Object类型参数,其指定页面的初始数据、生命周期回调、事件处理函数等。

页面生命周期-截图来自小程序官网

(2)老规矩,我们用代码来演示下各个页面生命周期函数的先后顺序。

  onLoad(options) {    console.log('onLoad监听页面加载');
  }

  onReady() {    console.log('onReady监听页面初次渲染完成');
  }

  onShow() {    console.log('onShow监听页面显示');
  }

  onHide() {    console.log('onHide监听页面隐藏');
  }

  onUnload() {    console.log('onUnload监听页面卸载');
  }

复制代码

页面生命周期函数

从中我们可以知道小程序的生命周期函数的调用顺序为:onLoad>onReady>onShow;至于onHide函数就是当隐藏页面的时候触发。

3、小结

由此我们知道了“小程序程序生命周期函数”和“页面生命周期函数”的调用顺序;这两者之间的事件顺序一般如上图所示小程序周期函数在前,页面周期函数触发在后; 但是,这 并不是绝对的,比如,有时候就会存在页面onLoad函数比小程序app的onLaunch生命周期函数先调用的情况,那么这时候就可以提出一个问题,那就是如何保证小程序的onLaunch事件的触发一定优先页面的onLoad事件? 这是我们下一章《小程序的因难技巧》要解决的问题。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019年07月22日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、小程序生命周期
  • 2、页面的生命周期
  • 3、小结
相关产品与服务
云开发 CloudBase
云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档