首页 > 编程语言 >微信小程序开发笔记 - 小程序的四种生命周期函数

微信小程序开发笔记 - 小程序的四种生命周期函数

时间:2022-12-02 22:57:31浏览次数:40  
标签:生命 程序 微信 程序开发 周期函数 组件 执行 页面

小程序的四种生命周期函数

目录

  • 生命周期是指一个对象从创建→运行→销毁的整个阶段
  • 生命周期函数是由小程序框架提供的内置函数,会伴随着生命周期,自动按次序执行。生命周期函数允许程序员在特定的时间点,执行某些特定的操作

1. 应用的生命周期函数

  • 特指小程序从启动→运行→销毁的过程

  • 小程序的应用生命周期函数需要在app.js中声明

    生命周期函数 描述说明
    onLaunch 小程序初始化完成时,执行此函数,全局只触发一次
    onShow 小程序启动,或从后台进入前台显示时触发
    onHide 小程序从前台进入后台时触发

2. 页面的生命周期函数

  • 特指小程序中,每个页面的加载→渲染→销毁的过程

  • 小程序的页面生命周期函数需要在页面的.js文件中声明

    生命周期函数 描述说明
    onLoad 监听页面加载,一个页面只加载一次
    onShow 监听页面显示
    onReady 监听页面初次渲染完成,一个页面只调用一次
    onHide 监听页面隐藏
    onUnload 监听页面卸载,一个页面只调用一次

3. 组件的生命周期函数

  • 小程序的组件生命周期函数需要在组件的.js文件中声明

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

    • 组件实例刚被创建好时,created生命周期函数会被触发
      • 此时还不能调用setData
      • 在这个生命周期函数中,通常只用于给组件的this添加一些自定义的属性字段
    • 在组件完全初始化完毕。进入页面节点树后,attached生命周期函数会被触发
      • 此时,this.data已被初始化完毕
      • 在这个生命周期函数中,绝大多数初始化的工作可以在这个时机进行
    • 在组件离开页面节点树后,detached生命周期函数会被触发
      • 退出一个页面时,会触发页面内每个自定义组件的detached生命周期函数
      • 此时适合做一些清理性质的工作
  • 定义方式

    生命周期函数需要声明在lifetimes字段内

    Component({
        lifetimes:{
            attached(){},
            detached(){}
        }
    })
    

4. 组件所在页面的生命周期函数

  • 有时,自定义组件的行为依赖于页面状态的变化,此时就需要用到组件所在页面的生命周期

  • 小程序的组件生命周期函数需要在组件的.js文件中声明

    生命周期函数 描述说明
    show 组件所在的页面被展示时执行
    hide 组件所在的页面被隐藏时执行
    resize 组件所在的页面尺寸变化时执行
  • 定义方式

    Component({
        pageLifetimes:{
            show:function(){},
            hide:function(){},
            resize:function(size){}
        }
    })
    

标签:生命,程序,微信,程序开发,周期函数,组件,执行,页面
From: https://www.cnblogs.com/Solitary-Rhyme/p/16945905.html

相关文章

  • #yyds干货盘点#【愚公系列】2022年12月 微信小程序-项目篇(公交查询)-02周边站点-获取
    前言1.相关API逆地址解析:提供由经纬度到文字地址及相关位置信息的转换能力,广泛应用于物流、出行、O2O、社交等场景。服务响应速度快、稳定,支撑亿级调用。可以满足以下相......
  • 个人微信api
    E云是一套完整的的第三方服务平台,包含微信API服务、企微API服务、SCRM系统定制、企微系统定制、服务类软件定制等模块,本文档主要讲述个微API服务相关,以下简称API,它能处理......
  • CS应用程序开发中的异常处理
      我们在进行网络应用程序开发时(主要是CS架构的应用程序)要面对很多异常情况的处理,这些异常中有些是服务器端主动抛出的异常,客户端要按照事先约定好的规则分类处理;有些......
  • 基于云开发的答题活动小程序v2.0-实现微信授权登录功能
    项目技术栈微信原生小程序+云开发。为什么选择微信原生小程序进行开发呢?因为能够直接应用它的云开发能力吖。我这里主要使用了云开发能力中的小程序端SDK,说白了就是在jav......
  • 微信小程序实战,基于vue2实现瀑布流
    1、什么是瀑布流呢?瀑布流,又称瀑布流式布局。是比较流行的一种网站页面布局,视觉表现为参差不齐的多栏布局,随着页面滚动条向下滚动,这种布局还会不断加载数据块并附加至当前......
  • 数学辅导微信小程序设计与实现的源码+文档
    摘 要网络的广泛应用给生活带来了十分的便利。所以把数学辅导管理与现在网络相结合,利用java技术建设数学辅导微信小程序,实现数学辅导的信息化。则对于进一步提高数学辅导......
  • #yyds干货盘点#【愚公系列】2022年12月 微信小程序-项目篇(公交查询)-01周边站点
    前言1.公交车站的意义转变现有出行模式,倡导公共交通和混合动力汽车、电动车、自行车等低碳或无碳方式,同时也丰富出行生活,增加出行项目。扭转奢华浪费之风,强化清洁、方便......
  • SpringCloud(七) - 微信支付
    1、开发文档微信开发文档:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=9_1安全规范:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=4_31、......
  • SpringCloud(四) - 微信获取用户信息
    1、项目介绍2、微信公众平台和微信开放文档2.1微信公众平台2.1.1网址链接https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?action=showinfo&t=sandbox/index......
  • 微信支付工具类
    WechatPayXmlUtil点击查看代码importorg.w3c.dom.Document;importjavax.xml.XMLConstants;importjavax.xml.parsers.DocumentBuilder;importjavax.xml.......