首页 > 编程语言 >微信小程序生命周期

微信小程序生命周期

时间:2022-09-26 15:15:21浏览次数:37  
标签:触发 生命周期 微信 程序 组件 页面 监听 周期函数

一、生命周期

1.应用的生命周期

  • 概念:特指小程序从启动-->运行-->销毁的过程。

  • app.js中进行声明。

  • 常见的应用生命周期函数:

    // app.js文件
    App({
      // 小程序初始化完成时,执行此函数,全局只触发一次,可以做一些初始化工作
      onLaunch: function (options) {},
      // 小程序启动,或从后台进入前台显示时触发
      onShow: function (options) {},
      // 小程序从前台进入后台时触发
      onHide: function () {}
    })
    

2.页面的生命周期

  • 概念:特指小程序中,每个页面的加载-->渲染-->销毁的过程。

  • 页面对应的.js中声明。

  • 常见的应用生命周期函数:

    // 页面的.js文件
    Page({
      // 监听页面加载,一个页面只调用一次
      onl oad: function (options) {},
      // 监听页面显示
      onShow: function () {},
      // 监听页面初次渲染完成,一个页面只调用一次
      onReady: function () {},
      // 监听页面隐藏
      onHide: function () {},
      // 监听页面卸载,一个页面只调用一次
      onUnload: function () {}
    })
    

3.组件的生命周期

生命周期函数 参数 描述说明
created 在组件实例刚刚被创建时执行
attached 在组件实例进入页面节点树时执行
ready 在组件在视图层布局完成后执行
moved 在组件实例被移到到节点树另一个位置时执行
detached 在组件实例被从页面节点树移除时执行
error Object Error 每当组件方法抛出错误时执行

二、生命周期函数

1.应用的生命周期函数

  • 小程序的生命周期函数是在app.js里面调用的,通过App(Object)函数用来注册一个小程序,指定其小程序的生命周期回调。

    生命周期函数 说明
    onLaunch 小程序初始化完成时触发,全局只触发一次
    onShow 小程序启动,或从后台进入前台显示时触发
    onHide 小程序从前台进入后台时触发
    onError 小程序发生脚本错误或API调用报错时触发
    onPageNotFound 小程序要打开的页面不存在时触发
    onUnhandledRejection() 小程序有未处理的Promise拒绝时触发
    onThemeChange 系统切换主题时触发

2.页面的生命周期函数

  • 页面生命周期函数就是当你每进入/切换到一个新的页面的时候,就会调用的生命周期函数,通过page(Object)函数用来注册一个页面。

    生命周期函数 说明 作用
    onLoad 监听页面加载 发送请求获取数据
    onShow 监听页面显示 请求数据
    onReady 监听页面初次渲染完成 获取页面元素(少用)
    onHide 监听页面隐藏 终止任务,如定时器或播放音乐
    onUnload 监听页面卸载 终止任务

3.组件的生命周期函数

  • 组件的生命周期,指的是组件自身的一些函数,这些函数在特殊的时间点或遇到一些特殊的框架事件时被自动触发,通过Component(Object)进行注册组件。
    • 组件实例刚刚被创建好时,created生命周期被触发,此时,组件数据 this.data 就是在Component构造器中定义的数据data, 此时不能调用setData。
    • 在组件完全初始化完毕、进入页面节点树后, attached 生命周期被触发。此时, this.data 已被初始化为组件的当前值。这个生命周期很有用,绝大多数初始化工作可以在这个时机进行。
    • 在组件离开页面节点树后, detached 生命周期被触发。退出一个页面时,如果组件还在页面节点树中,则detached会被触发。
生命周期函数 说明
created 监听页面加载
attached 监听页面显示
ready 监听页面初次渲染完成
moved 监听页面隐藏
detached 监听页面卸载
error 每当组件方法抛出错误时执行
  • 组件中特殊的生命周期函数

    • 还有一些特殊的生命周期,它们并非与组件有很强的关联,但有时组件需要获知,以便组件内部处理,这样的生命周期称为“组件所在页面的生命周期”,在 pageLifetimes 定义段中定义。

      生命周期函数 参数 描述
      show 组件所在的页面被展示时执行
      hide 组件所在的页面被隐藏时执行
      resize Object Size 组件所在的页面尺寸变化时执行

标签:触发,生命周期,微信,程序,组件,页面,监听,周期函数
From: https://www.cnblogs.com/P1Kaj1uu/p/16731002.html

相关文章

  • 制作程序主题
    用处不大,但是用了会让代码显得有逼格、有新意。下面编写一个脚本实现程序主题的显示,使用echo命令实现,脚本内容如下:#!/bin/bash#author:zhangylecho"****************......
  • 小程序使用canvas 2D实现签字效果
    效果如下:  请结合小程序官方文档进行解读wxml:<view><view>请在下方签字:</view><canvasid="myCanvas"type="2d"style="border:1pxsolid#d3d3d3;"......
  • 微信小程序专题(一)-----微信后台的相关开发
    本人最近在做微信小程序后端的相关开发工作接触到微信小程序目前来讲需要两个条件1.前端通过后台服务器去调用微信平台接口,来获取openid;2.前端必须调用https跟域名......
  • 微信小程序专题(二)-----微信openid的获取
    一,简单来讲就是以下流程 通过get方式获取信息在前端调用wx.login()获取临时登录凭证code之后,将code字符串发送给后端,后端通过auth.code2Session接口获取用户唯一......
  • 升级后运行程序,打开相关BPL报错
     ---------------------------Shoeserpp---------------------------Accessviolationataddress55831EB2inmodule'ABFrameworkG.bpl'.Readofaddress00000000.......
  • 本书的关键学习:实用程序员
    本书的关键学习:实用程序员最近,我看到了AndyHunt和DaveThomas的一本非常受欢迎的书,名为ThePragmaticProgrammer。显然,如果你在谷歌上搜索“最佳编程书籍”,这本书......
  • HBuilderX配置微信开发者工具后,微信开发者工具显示Fail to open IDE
     问题微信开发者工具地址配置正确,且端口也开启了,但是显示打开微信ide失败。   原因manifest.json中有微信小程序AppID,但未在微信开发平台将我的微信号加......
  • aardio + Python 可视化快速开发桌面程序,一键生成独立 EXE
    网络上大家分享的aardio+Python混合开发的文章很多,不得不说aardio与Python混合开发是真的简单!▶ 快速入门推荐几个快速上手教程:《aardio+Python开发桌面软......
  • 微信小程序生成页面太阳码及分享海报
    @目录效果图实现方式踩坑代码效果图实现方式后端node获取小程序token及太阳码参考文章点我生成海报使用插件painter地址点我小程序生成太阳码文档点我踩坑千......
  • 微信小程序中样式无效
    子组件使用全局样式需要在组件js中加入 styleIsolationComponent({options:{styleIsolation:'isolated'//默认值isolated(启动隔离)、//......