UniApp 应用、页面与组件的生命周期详解

UniApp 应用、页面与组件的生命周期详解

uni-app中包含了 应用生命周期、页面生命周期、和组件生命周期( Vue.js的)函数。

应用生命周期

应用生命周期仅可在App.vue中监听,在其它页面监听无效。

<script>export default {onLaunch: function() {console.log('onLaunch:应用初始化完成,全局触发一次');},onShow: function() {console.log('onShow:应用从后台进入前台,多次');},onHide: function() {console.log('onHide:应用从前台进入后台,多次');},onError:function(err){console.log('onError:监听页面异常', err);}}
</script>

UniApp 应用、页面与组件的生命周期详解
应用从前台进入后台UniApp 应用、页面与组件的生命周期详解
报错监听:

	<button type="button" @click="clickHandler">点击报错</button>clickHandler(){const i = 1;i = 10;}

效果,常量不能改变值,会报错,相应的会监听到:
UniApp 应用、页面与组件的生命周期详解

页面生命周期

uniapppages.json中配置的页面才有一下页面生命周期函数,子组件中没有这些函数

  • onLoad:监听页面加载,其参数为上个页面传递的数据,参数类型为Object用于页面传参。
  • onShow:监听页面显示,页面每次出现在屏幕上都会触发,包括从下级页面返回露出当前页面。
  • onReady:监听页面初次渲染完成,注意,如果渲染速度加快,会在页面进入动画前完成出发。
  • onHide:监听页面隐藏。
    -onUnload:页面卸载函数,当前页面从内存中关闭显示。
    -onResize:当窗口屏幕变化,横屏竖屏的时候。
onLoad() {console.log("监听页面加载,一般用于初始化页面数据,进入页面时调用一次")
},	
onShow() {console.log("监听页面显示,页面出现在屏幕上就会被触发")
},
onReady() {console.log("监听页面出事渲染完成")
},
onHide() {console.log("页面隐藏")
},

效果:
UniApp 应用、页面与组件的生命周期详解
通过uni.reLaunch()进行跳转,并且关闭内存中的所有页面

onUnload(){console.log("页面卸载")
},

UniApp 应用、页面与组件的生命周期详解
窗口横屏监听函数:

onResize() {console.log("窗口已变化")
},

组件生命周期

uniapp组件支持的生命周期,与vue标准生命周期相同,这里没有页面级的onLoad等生命周期,一般在子组件使用,当然页面中也可以使用的。

  • beforeCreate:在实例初始化之后被调用。
  • created:在实例创建完成后被立即调用。
  • beforeMount:在挂在开始之前被调用。
  • mounted:挂在到实例上去之后调用,并不能确定子组件被全部挂在,如果需要子组件完全挂载之后在执行操作可以使用$nextTick
  • beforeUpdate:数据更新时调用,发生在虚拟DOM不定之前。
  • updated由于数据更改导致虚拟DOM重新渲染和打补丁,在这时候会调用该钩子。
  • beforeDestroy:实例销毁之前调用,到了这个生命周期时候,实例完全可以使用。
  • destroyedvue实例销毁后调用,调用后,vue实例指示的所有东西都会解绑定,所有的事件监听器会被移除,所有的子实例也会被销毁。

总结:

只要是 vue.nvue就可以使用组件生命周期函数,但是页面生命周期函数只能在pages选项中注册了作为页面时才可以使用。应用生命周期函数只能在App.vue文件中使用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/14443.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

进程的创建/终止/等待/替换

目录 一、进程创建 &#xff08;一&#xff09;fork函数的概念 &#xff08;二&#xff09;fork函数示例 二、进程终止 &#xff08;一&#xff09;退出码的概念 &#xff08;二&#xff09;退出码的含义 &#xff08;三&#xff09;相关函数和指令 三、进程等待 &…

【c++丨STL】list的使用

&#x1f31f;&#x1f31f;作者主页&#xff1a;ephemerals__ &#x1f31f;&#x1f31f;所属专栏&#xff1a;C、STL 目录 前言 list简介 一、list的默认成员函数 构造函数(constructor) 析构函数 赋值重载 二、list的迭代器接口 迭代器的功能分类 三、list的容量…

CANoe导入CAN DataBase(DBC文件)

Canoe是一款用于汽车网络仿真和开发的工具&#xff0c;它支持导入DBC文件&#xff08;CAN Database文件&#xff09;以定义和配置CAN网络中的消息、信号和节点。 将DBC文件拷贝至我们的工程目录的DBC文件夹内&#xff0c;随后在Simulation Setup中右击DataBase&#xff0c;进…

nacos配置管理

1、增加依赖 <!--配置管理的依赖 --> <dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId><version>2.1.0.RELEASE</version> </dependency><de…

每日OJ题_牛客_奇数位丢弃_找规律/模拟_C++_Java

目录 牛客_奇数位丢弃_找规律/模拟 题目解析 C代码1模拟 C代码2找规律 Java代码找规律 牛客_奇数位丢弃_找规律/模拟 奇数位丢弃_牛客题霸_牛客网 描述&#xff1a; 对于一个由 0..n 的所有数按升序组成的序列&#xff0c;我们要进行一些筛选&#xff0c;每次我们丢弃去…

解决table下tr或td选中不生效的问题

目录 一、问题描述 1.首先我们来看一下代码结构 2.检查代码&#xff08;鼠标右键或按下F12&#xff09; 3.解决方案 一、问题描述 解决table下tr或td选中不生效&#xff0c;页面刷新无效果 1.首先我们来看一下代码结构 这里我们的结构是table标签下的tr&#xff0c;tr当…

学籍拍照助手,中小学新生学籍证件照电脑端拍照教程

新学期过半&#xff0c;许多中小学学籍管理员都忙碌起来&#xff0c;为孩子们准备学籍所需的证件照。传统的照相馆拍摄、向家长收集都存在一些弊端&#xff0c;下面就来介绍如何使用校园学籍拍照助手&#xff0c;更智能的完成学籍证件照的拍摄。 1. 准备工作在开始之前&#xf…

SE30 程序运行时间评估

日常执行报表的时候 可能会遇到报表反应时间太长 用户无法接受的情况&#xff0c;此时 作为IT同事 需要分析程序的运行时间&#xff0c;可以使用SAP标准事务码SE30. 1、选择运行时分析-测量-立即执行&#xff08;有些程序可能没有此按钮 需联系开发增加&#xff09; 2、以发…

T-Rex Label标注

这个是做大量数据集的时候用到的&#xff0c;但我觉得他比labelimg好用。 仙人指路✈trexlabel 基本标注 如果是从新开始的话就是 导入图片然后进行直接标注 如果是后期添加图片继续标注&#xff0c;选择你需要的数据集格式&#xff0c;导入即可。 如此&#xff0c;进去就…

部署zabbix遇到问题: cannot find a valid baseurl for repo:centos-sclo-rh/x86 64 怎么解决 ?

安装 Zabbix 前端包&#xff0c;提示cannot find a valid baseurl for repo&#xff1a;centos-sclo-rh/x86 64 安装zabbix前端包 # yum install zabbix-web-mysql-scl zabbix-apache-conf-scl 解决办法&#xff1a; 原因是&#xff1a;CentOS7的SCL源在2024年6月30日停止维护…

小程序+公众号统一账号unionid,实现pc+公众号+小程序统一身份

一、微信开放平台 注册开发者账号、绑定公众号、小程序 二、小程序端获取unionid 1获取code wx.login({success: res > {console.log("getCode", res.code)this.getOpenId(res.code)}}) 2通过code调用后台方法获取openid,unionid 小程序端 getOpenId: functi…

LeetCode【0037】解数独

本文目录 1 中文题目2 求解方法&#xff1a;递归回溯法2.1 方法思路2.2 Python代码2.3 复杂度分析 3 题目总结 1 中文题目 编写一个程序&#xff0c;通过填充空格来解决数独问题。数独的解法需 遵循如下规则&#xff1a; 数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只…

零碎02-接口文档管理

目录 一、背景故事 二、解决方案分析 1. 静态文档方案 2. Swagger Springfox 3. Knife4j增强方案 三、示例 1. 添加依赖 2. 配置Knife4j 3. 创建knife4j配置类 4. 启动Spring Boot项目并访问接口文档 5. 使用示例 6. 测试和使用 四、总结 一、背景故事 酷乐是一名…

指标体系构建:如何设计北极星指标设计?

目录 1 北极星指标的作用 2 北极星指标设计标准 标准1 标准2 标准3 标准4 标准5 标准6 3 小结 1 北极星指标的作用 北极星指标是公司业务成功的关键指标&#xff0c;反映了公司为用户带来的价值&#xff0c;有以下3点作用&#xff1a; ● 像北极星一样&#xff0c…

三菱FX5UPLC以太网Socket通信功能Passive开放的程序示例

Passive开放的通信流程如下所示。 参数设置 示例程序中使用的参数设置如下所示。 [CPU模块】 导航窗口↔[参数]↔[模块型号]↔[模块参数]-[以太网端口]-[基本设置]-[对象设备连接配置设置]↔[详细设置]→[以太网配置(内置以太网端口)]画面 【以太网模块】 [导航]中「参数]→[模…

【MATLAB源码-第292期】基于matlab的4ASK调制解调窄带通信系统仿真,输出各节点波形图以及误码率曲线图。

操作环境&#xff1a; MATLAB 2022a 1、算法描述 窄带通信系统是指带宽较小、频谱利用效率较低的通信系统。与宽带通信系统相比&#xff0c;窄带系统的特点是信号的带宽相对较窄&#xff0c;因此需要更精确的调制技术来实现有效的通信。在窄带通信中&#xff0c;常见的调制方…

【搜索结构】AVL树的学习与实现

目录 什么是AVL树 AVL树的定义 插入函数的实现 左单旋和右单旋 左右双旋与右左双旋 什么是AVL树 AVL树实际上就是二叉搜索树的一种变体&#xff0c;我们都知道二i叉搜索树可以将查找的时间复杂度提升到O(logn)&#xff0c;极大提升搜索效率。但是在极端情况下&#xff0c;当…

【专题】2024年中国消费者消费意愿调查报告汇总PDF洞察(附原数据表)

原文链接&#xff1a;https://tecdat.cn/?p38242 当今时代&#xff0c;经济社会多元发展&#xff0c;消费市场复杂多变。消费者的行为、需求和支出意愿不断演变&#xff0c;深刻影响着各个领域的发展。家庭余钱的用途反映出消费者在储蓄、教育、医疗等方面的考量。在消费领域…

推荐一款游戏玩家性能优化工具:Razer Cortex

Razer Cortex是一款专为游戏玩家设计的性能优化工具&#xff0c;它旨在提升玩家的游戏体验。通过该软件&#xff0c;用户可以优化 PC 性能&#xff0c;从而提高游戏的流畅度&#xff0c;减少延迟并增强视觉效果&#xff0c;尤其在需要精准操作的游戏中&#xff0c;流畅的画面和…

人工智能(AI)对于电商行业的变革和意义

![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/402a907e12694df5a34f8f266385f3d2.png#pic_center> &#x1f393;作者简介&#xff1a;全栈领域优质创作者 &#x1f310;个人主页&#xff1a;百锦再新空间代码工作室 &#x1f4de;工作室&#xff1a;新空间代…