小程序生命周期

以下方法按照执行开始顺序排列,但是方法是并列执行的,并不保证方法结束时间的先后顺序。主要是自定义组件这里生命周期加入会使得整个小程序生命周期变多了,重新梳理一下

小程序启动流程大概是这样的

uml diagram

这里在APP的逻辑执行前,各方代码都会先注入,比如页面的、组件的、插件的等等,接下来才是APP逻辑的运行

APP

  1. onLaunch
  2. onShow

Pageopen in new window

  1. onLoad
  2. onShow

Componentopen in new window

自定义组件生命周期

  1. created(注意这里还不能setData,只能给this添加自定义属性)
  2. attached
  3. ready
  4. moved
  5. detached

自定义组件页面生命周期

  1. show
  2. hide
  3. resize

behaviors

类似mixin的东西,但是这个也对生命周期会有影响。
后续补充

总结一下:behaviors的生命周期,优先于注入组件的生命周期
文档open in new window,已说明

[my-behavior] created
[my-component] created
[my-behavior] attached
[my-component] attached
[my-behavior] ready
[my-component] ready

大致整体顺序

  1. APP onLaunch执行
  2. APP onShow执行
  3. Components created
  4. Components attached
  5. Page onLoad
  6. Components show
  7. Page onShow
  8. Components hide(可能,如page onLoad调用了wx.previewImage)
  9. Components ready
Last Updated:
<manfred>峯</hu>
欢迎关注微信公众号 【Big前端】无广告,无软文,就是这么傲娇。直推一线大厂高质量内容,不局限于前端·后台·运维相关,还包括房价🏠、信用卡💳等内容也可内推一线大厂腾讯阿里字节,对腾讯字节比较熟悉,简历可以发给我,我会给你介绍一线大厂的情况,让你更加了解一线大厂