uniapp生命周期函数

news2024/11/13 12:10:55

常见页面生命周期函数

onLoad(options): 页面加载时触发,可以接收启动页面时的参数

onShow

onReady: 页面初次渲染完成时触发。

onHide: 页面被隐藏时触发

onUnload: 页面被关闭时触发

onLoad作用

 获取url传递的参数,可以使用onLoad来获取,具体实现可以查看

如何获取以下url传递的参数?

可以通过onLoad()来获取.onLoad有一个形参,用于接收初始化的参数

	import {
		onLoad
	} from '@dcloudio/uni-app'
	onLoad((e) => {
		console.log(e);
	})

onShow作用

onShow 会在以下几种情况下被调用:

  1. 页面首次加载时:当用户首次打开页面时,onShow 会被触发。
  2. 页面从后台回到前台时:如果用户切换到其他页面或应用,然后再次回到当前页面,onShow 也会被触发。
  3. 从其他页面返回当前页面时:当用户从一个导航栈中的其他页面返回到当前页面时,onShow 会被触发。


与 onLoad 的区别

  1. 触发时机onLoad 只在页面首次加载时触发一次,而 onShow 每次页面显示时都会触发。

  2. 用途onLoad 更适合用于初始化页面数据和执行一次性操作,而 onShow 则适合用于更新页面数据和执行周期性操作。

onReady 的作用:

  1. DOM 操作onReady 是执行依赖于 DOM 的操作的最佳时机。由于此时页面已经完成初次渲染,DOM 元素已经存在,可以安全地进行选择和操作。

  2. 初始化组件:可以在此时初始化一些需要 DOM 支持的组件,如地图、图表、富文本编辑器等。

  3. 绑定事件监听器:如果需要绑定一些依赖于 DOM 元素的事件监听器,可以在 onReady 中进行绑定。

  4. 动画和样式调整:如果需要在页面加载完成后立即执行动画或调整样式,onReady 是一个合适的时机。

  5. 资源加载:如果页面需要加载额外的资源(如字体、图片等),在这些资源加载完毕后,onReady 可以确保这些资源已经被加载,从而可以安全地使用它们。

  6. 第三方库初始化:如果页面使用了第三方库,这些库可能需要 DOM 元素存在才能正常工作,可以在 onReady 中进行初始化。

onHide 的用法

onHide 是 UniApp 中的一个页面生命周期函数,它在页面被隐藏时触发。这个函数非常适合用来处理页面隐藏时需要执行的操作,例如保存状态、暂停定时器、释放资源等。


onHide 主要在以下情况被触发:

  1. 用户导航到另一个页面。
  2. 用户切换到其他应用或锁屏。
  3. 用户关闭当前页面(但在某些情况下,onUnload 而不是 onHide 会被触发)。

测试

  1. 页面加载时

    • 控制台输出 页面加载,触发onLoad
  2. 进入页面时

    • 控制台输出 进入页面,触发onShow
  3. 页面渲染完成时

    • 控制台输出 页面渲染完成,触发onReady
  4. 页面被隐藏时

    • 控制台输出 页面被隐藏,触发onHide
  5. 页面被卸载时

    • 控制台输出 页面卸载,触发onHide
<template>
	<div>

	</div>
</template>

<script setup>
	import {
		onLoad,
		onShow,
		onReady,
		onHide,
		onUnload
	} from '@dcloudio/uni-app'
	onLoad(() => {
		console.log('页面加载,触发onLoad');
	})
	onShow(() => {
		console.log('进入页面,触发onShow');
	})
	onReady(()=>{
		console.log('页面渲染完成,触发onReady');
	})
	onHide(()=>{
		console.log('页面被隐藏,触发onHide');
		
	})
	onUnload(()=>{
		console.log('页面被销毁,触发onUnload');
	})
	
	
</script>

<style scoped>

</style>

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

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

相关文章

MySQL进阶篇1

一、存储引擎 1.1 MySQL体系结构 1.2 存储引擎简介 存储引擎就是存储数据、建立索引、更新/查询数据等技术的实现方式。存储引擎是基于表的&#xff0c;而不是基于库的&#xff0c;所以存储引擎也可被称为表类型。 1.3 存储引擎特点 1.4 存储引擎选择 存储引擎没有好坏之分&am…

Ubuntu22.04安装 docker和docker-compose环境

Docker简介 Docker 是一个开源的应用容器引擎&#xff0c;它使开发者能够打包他们的应用以及依赖包到一个可移植的容器中&#xff0c;然后发布到任何流行的 Linux 机器上&#xff0c;也可以实现虚拟化。容器是完全使用沙箱机制&#xff0c;相互之间不会有任何接口&#xff08;…

深度学习入门笔记

深度学习入门笔记 感知机逻辑与门与非门或门多层感知机异或门 神经网络激活函数输出层设计损失函数均方误差 MSE交叉熵误差 反向传播算法计算图局部计算计算图反向传播反向传播 参数更新训练过程总结 该篇文章为本人学习笔记的一部分。笔记基于《深度学习入门 基于python理论实…

Navicat连接Mongodb成功了,但是无法显示数据库怎么办?

不知道你是否遇到过&#xff1f;Navicat连接Mongodb成功了&#xff0c;但是无法显示数据库怎么办&#xff1f; 解决办法 这个问题比较坑&#xff0c;对于第一次接触的小伙伴&#xff0c;可能会一脸懵逼&#xff0c;原因就是在Navicat中默认会不显示隐藏的项目&#xff0c;如果不…

产品/运营经理的数据分析思维和学习路径

数据分析是产品经理和运营同学必知必会的技能之一&#xff0c;该技能会贯穿到产品经理和运营同学的整个职业生涯。 产品经理不需要成为数据分析方面的专家&#xff0c;但分析哪些数据、如何分析数据、如何用数据辅助决策、如何用数据驱动业务&#xff0c;这些是产品和运营同学…

C++学习笔记之指针(基础)

C学习笔记之指针&#xff08;基础&#xff09; https://www.runoob.com/cplusplus/cpp-pointers.html C/C中的指针内容是早就盛名在外了&#xff0c;当然了&#xff0c;想要随心所欲地使用也是要做很多功课的&#xff0c;先简单了解下吧~ 首先&#xff0c;我们需要了解一点内存…

STM32基础篇:RTC × Unix时间戳 × BKP

Unix时间戳 最早是在Unix系统使用的&#xff0c;之后很多由Unix演变而来的系统也都继承了Unix时间戳的规定。目前&#xff0c;Linux、Windows、安卓这些系统&#xff0c;其底层的计时系统都是使用Unix时间戳。 Uinx时间戳&#xff08;Unix Timestamp&#xff09;定义为从UTC/…

论文速读|ReKep:空间时间理论的关系关键点约束,用于机器人操作

项目地址&#xff1a;ReKep | Spatio-Temporal ReasoningReKep | Spatio-Temporal Reasoning of Relational Keypoint Constraints for Robotic ManipulationReKep | Spatio-Temporal Reasoning ReKep&#xff08;Relational Keypoint Constraints&#xff09;是一种基于视觉的…

Nebula: 无服务器计算中的性能和能源效率 - WebAssembly与Docker的比较研究

这篇论文的标题是《Nebula: Performance and Energy Efficiency in Serverless Computing - A Comparative Study of WebAssembly and Docker》&#xff0c;作者是 Marius Nilsen Kluften&#xff0c;来自奥斯陆大学&#xff08;University of Oslo&#xff09;的信息学系。论文…

android仿assistivetouch悬浮窗实现(带功能实现)

一、悬浮窗点击后的界面&#xff1a; 主要有四个功能&#xff0c;返回、应用程序、退出和主界面。其他功能也可以类似添加。 界面布局代码就不贴出来了&#xff0c;源码&#xff08;切记需要签名才能让功能实现&#xff09;&#xff1a;下载地址 二、主要是检测系统启动或者a…

时序数据库荣登巅峰,被央视报道了!

8月30日&#xff0c;事务处理性能委员会TPC正式公布了最新的国际权威数据库性能基准榜单&#xff0c;“清华系”发起研制的Apache IoTDB开发的国产化时序数据库软件TimechoDB&#xff0c;在性能和系统成本维度上双双打破世界纪录。在央视《24小时》节目中&#xff0c;1分34秒重…

《黑神话:悟空》与游戏经济学的深度剖析

《黑神话&#xff1a;悟空》作为近年来备受瞩目的国产3A游戏大作&#xff0c;自其发布以来&#xff0c;不仅在游戏界内引起了轰动&#xff0c;更在多个消费领域产生了深远的影响。这款游戏不仅以其卓越的品质和深刻的文化内涵吸引了大量玩家的关注&#xff0c;还通过一系列连锁…

神策埋点 sensorsdata.es6.min.js、sensorsdata.min.js 触发eslint 语法检查,导致打包不成功

问题描述&#xff1a; 在使用神策埋点时&#xff0c;下载的web js sdk&#xff0c;打包时eslint 语法检查&#xff0c;会导致打包不成功。npm start没问题。 主要错误是&#xff1a; Line 1:204272: Expected an assignment or function call and instead saw an expression …

[Python]之深拷贝与浅拷贝

Python之深拷贝与浅拷贝 概述: ​ 大白话解释就是 深拷贝拷贝的多, 浅拷贝拷贝的少. 深浅拷贝区别就是: 拷贝的层级的多与少. 深浅拷贝都能操作可变类型 和 不可变类型, 但是深浅拷贝一般操作的都是 可变类型, 几乎不会出操作不可变类型的. 可变类型 和 不可变类型的划分依…

openssl RSA 密钥(key)、证书签名请求(csr)、证书(cer)的生成和例子

1. RSA 密钥(key)、证书签名请求&#xff08;csr&#xff09;、证书&#xff08;cer&#xff09;的生成顺序 2. 具体操作 a. 生成 RSA 密钥&#xff08;私钥&#xff09; openssl genrsa -aes256 -out ca.key 2048b. 生成证书签名请求(csr) # C-----国家&#xff08;Country…

Oracle超详细(数据库编程)

目录 一、数据类型 &#xff08;一&#xff09;数值型数据类型 &#xff08;二&#xff09;字符型数据类型 &#xff08;三&#xff09;日期和时间型数据类型 &#xff08;四&#xff09;大对象和二进制数据类型 &#xff08;五&#xff09;其他数据类型 &#xff08;六&…

离散余弦变换(Discrete Cosine Transform, DCT),信号去噪

介绍 离散余弦变换&#xff08;Discrete Cosine Transform, DCT&#xff09;是一种常用的信号处理工具&#xff0c;特别是在数据压缩、图像处理和模式识别等领域中。DCT的基本思想是将信号从空间域或时间域转换到频率域&#xff0c;以揭示信号中的频率成分。与离散傅里叶变换&…

C/C++网络编程--文件分块传输

文件分块传输是网络编程中一个常见的任务&#xff0c;尤其是在处理大文件时&#xff0c;将文件分块可以提高传输效率&#xff0c;简化错误处理&#xff0c;并可以实现并发传输。下面&#xff0c;写个从客户端向服务器发送大型数据的demo。 客户端 客户端有两点需要注意&#…

vue组件中的数据传递(2)--子组件传父组件

两种情况 子主动传 vue 父传子 子传父实现方式_vue父传子-CSDN博客 vue父子组件传值&#xff0c;父传子&#xff0c;子传父_父传子 且随时变化-CSDN博客 父主动要 Vue2.0的三种常用传值方式、父传子、子传父、非父子组件传值_父传子传-CSDN博客

File Transfer Server 文件传输服务器插件

您需要在本地不同设备之间传输文件吗?现在你可以做到了,你不必安装任何专用服务器。 文件传输服务器为您的游戏或应用程序添加了将文件从任何受支持的平台传输到任何受支持平台的能力。从移动到独立,从移动到移动等(查看支持的平台) 优势: -完整的源代码可用。 -不需要预…