当前位置: 首页 > news >正文

uniappVue3版本中组件生命周期和页面生命周期的详细介绍

一、什么是生命周期?

生命周期有多重叫法,有叫生命周期函数的,也有叫生命周期钩子的,还有钩子函数的,其实都是代表,在 Vue 实例创建、更新和销毁的不同阶段触发的一组钩子函数,这些生命周期函数允许开发者在不同阶段对 Vue 实例进行操作,以便执行特定的逻辑或清理工作。

生命周期主要包含以下四个阶段:创建、挂载、更新、销毁。
好比一款手机,创建(拿到全新一款手机)、挂载(安装各种软件)、更新(系统或者软件升级)、销毁(丢弃手机)

二、Vue3中的生命周期函数

官方生命周期函数地址

  • setup()是在beforeCreate和created之前运行的,所以可以用setup代替这两个钩子函数。
  • onBeforeMount() : 已经完成了模板的编译,但是组件还未挂载到DOM上的函数。
  • onMounted() : 组件挂载到DOM完成后执行的函数。
  • onBeforeUpdate(): 组件更新之前执行的函数。
  • onUpdated(): 由于数据更改导致的虚拟 DOM 重新渲染和打补丁,在这之后会调用该函数。
  • onBeforeUnmount(): 在组件实例被卸载之前调用。
  • onUnmounted(): 组件卸载完成后执行的函数
  • onActivated(): 若组件实例是 缓存树的一部分,当组件被插入到 DOM 中时调用。
  • onDeactivated(): 若组件实例是 缓存树的一部分,当组件从 DOM 中被移除时调用。
  • onErrorCaptured(): 在捕获了后代组件传递的错误时调用。

注意:在uniapp组件中,onBeforeUpdate、onUpdated、onActivated、onDeactivated,H5支持,小程序无法使用。

在这里插入图片描述

三、Vue2与Vue3的对比

在这里插入图片描述

四、uniapp中的页面生命周期函数

uniapp页面生命周期函数与 Vue.js 的生命周期函数有所不同,因为 uni-app 是基于 Vue.js 的跨平台应用框架,因此它具有自己特定的生命周期函数。
可以在这些生命周期函数中编写相应的逻辑代码,以便在不同阶段对页面进行初始化、展示、隐藏和卸载时执行特定的操作。

在开发uniapp Vue3版本的时候,不能像vue2的选项式API一样,可以直接使用onLoad、onShow等,在组合式API中需要先从“@dcloudio/uni-app”模块中导入才可以。

<script setup>
import {onLoad,onReady} from "@dcloudio/uni-app"
</script>
  • onLoad:页面加载时触发,可以在此生命周期函数中进行页面初始化操作。
  • onShow:页面显示时触发,可以在此生命周期函数中进行页面展示相关的操作。
  • onReady:页面初次渲染完成时触发,可以在此生命周期函数中进行页面渲染完成后的操作。
  • onHide:页面隐藏时触发,可以在此生命周期函数中进行页面隐藏相关的操作。
  • onUnload:页面卸载时触发,可以在此生命周期函数中进行页面卸载相关的操作。

其他常用的生命周期,可以看官方发文档,页面生命周期函数

五、uniapp中组件生命周期函数和页面生命周期函数的执行顺序

不包含组件的页面

onLoad > onShow > onReady

包含组件的页面

onLoad > onShow > onBeforeMount > onReady > onMounted

相关文章:

uniappVue3版本中组件生命周期和页面生命周期的详细介绍

一、什么是生命周期&#xff1f; 生命周期有多重叫法&#xff0c;有叫生命周期函数的&#xff0c;也有叫生命周期钩子的&#xff0c;还有钩子函数的&#xff0c;其实都是代表&#xff0c;在 Vue 实例创建、更新和销毁的不同阶段触发的一组钩子函数&#xff0c;这些生命周期函数…...

任务驱动式编程

main /** 模板代码*/#include "gd32f4xx.h" #include "systick.h" #include <stdio.h> #include <string.h> #include <stdlib.h> #include <math.h> #include "main.h" #include "USART0.h" #include &quo…...

python数据可视化之折线图案例讲解

学习完python基础知识点&#xff0c;终于来到了新的模块——数据可视化。 我理解的数据可视化是对大量的数据进行分析以更直观的形式展现出来。 今天我们用python数据可视化来实现一个2023年三大购物平台销售额比重的折线图。 准备工作&#xff1a;我们需要下载用于生成图表的第…...

QT工具栏开始,退出

QT工具栏开始&#xff0c;退出 //初始化场景QMenuBar *bar menuBar();setMenuBar(bar);QMenu *startbar bar->addMenu("开始");QAction * quitAction startbar->addAction("退出");connect(quitAction , &QAction::triggered,[](){this->c…...

@Async正确使用姿势

Async注解可以使被修饰的方法成为异步方法&#xff0c;简单且方便&#xff0c;这篇文章将教你如何正确的使用它 先谈谈大多数人对Aysnc的认识&#xff1a; 如果直接使用Async&#xff0c;未指定线程池 并且 容器内也没有beanName为taskExecutor的bean&#xff0c;则会使…...

试除法判定质数算法总结

知识概览 质数的定义 在大于1的整数中&#xff0c;如果只包含1和本身这两个约数&#xff0c;就被称为质数&#xff0c;或者叫素数。 质数的判定——试除法 暴力算法 时间复杂度 改进算法 时间复杂度 暴力算法&#xff1a;时间复杂度O(n) 算法模版 bool is_pr…...

vuetify 回到顶部

参考链接 // 回到id#app-content-container 的dom节点顶部 onScroll() {const ele document.querySelector(#app-content-container)// this.$vuetify.goTo(0, duration)this.$vuetify.goTo(#app-content-container, { container: ele })},...

Socket与TCP的关系

前言 相信大家对于TCP已经非常熟悉了&#xff0c;学习过计算机网络的同学对于它的连接和断开流程应该已经烂熟于心了吧。 那么Socket是什么&#xff1f; Socket是应用层与TCP/IP协议簇通信的中间软件抽象层&#xff0c;它是一组接口。在设计模式中&#xff0c;Socket其实就是…...

RKE安装k8s及部署高可用rancher之证书私有证书但是内置的ssl不放到外置的LB中 4层负载均衡

先决条件# Kubernetes 集群 参考RKE安装k8s及部署高可用rancher之证书在外面的LB&#xff08;nginx中&#xff09;-CSDN博客CLI 工具Ingress Controller&#xff08;仅适用于托管 Kubernetes&#xff09; 创建集群k8s [rootnginx locale]# cat rancher-cluster.yml nodes:- …...

使用爬虫爬取热门电影

文章目录 网站存储视频的原理M3U8文件解读网站分析代码实现 网站存储视频的原理 首先我们来了解一下网站存储视频的原理。 一般情况下&#xff0c;一个网页里想要显示出一个视频资源&#xff0c;必须有一个<video>标签&#xff0c; <video src"xxx.mp4"&…...

【unity小技巧】实现没有动画的FPS武器摇摆和摆动效果

文章目录 前言开始完结 前言 添加程序摇摆和摆动是为任何FPS游戏添加一些细节的非常简单的方法。但是并不是所以的模型动画都会配有武器摆动动画效果&#xff0c;在本文中&#xff0c;将实现如何使用一些简单的代码实现武器摇摆和摆动效果&#xff0c;这比设置动画来尝试实现类…...

C语言基础知识(6):UDP网络编程

UDP 是不具有可靠性的数据报协议。细微的处理它会交给上层的应用去完成。在 UDP 的情况下&#xff0c;虽然可以确保发送消息的大小&#xff0c;却不能保证消息一定会到达。因此&#xff0c;应用有时会根据自己的需要进行重发处理。 1.UDP协议的主要特点&#xff1a; &#xf…...

12月笔记

#pragma once 防止多次引用头文件&#xff0c;保证同一个&#xff08;物理意义上&#xff09;文件被多次包含&#xff0c;内容相同的两个文件同样会被包含。 头文件.h与无.h的文件&#xff1a; iostream是C的头文件&#xff0c;iostream.h是C的头文件&#xff0c;即标准的C头文…...

三、C语言中的分支与循环—for循环 (6)

本章分支结构的学习内容如下&#xff1a; 三、C语言中的分支与循环—if语句 (1) 三、C语言中的分支与循环—关系操作符 (2) 三、C语言中的分支与循环—条件操作符 与逻辑操作符(3) 三、C语言中的分支与循环—switch语句&#xff08;4&#xff09;分支结构 完 本章循环结构的…...

tolist()读取Excel列数据,(Excel列数据去重后,重新保存到新的Excel里)

从Excel列数据去重后&#xff0c;重新保存到新的Excel里 import pandas as pd# 读取Excel文件 file r"D:\\pythonXangmu\\quchong\\quchong.xlsx" # 使用原始字符串以避免转义字符 df pd.read_excel(file, sheet_namenameSheet)# 删除重复值 df2 df.drop_duplica…...

ChatGPT大升级,文档图像识别领域迎来技术革新

​写在前面ChatGPT迎来重大升级冲击与机遇并存​大模型时代的思考与探索■ 像素级OCR统一模型- UPOCR■ OCR大一统模型- SPTS v3■ 文档识别分析LLM应用 写在最后问卷抽奖 ​写在前面 2023 年 12 月 31 日第十九届中国图象图形学学会青年科学家会议在广州召开&#xff0c;该会…...

2023年全国职业院校技能大赛软件测试—测试报告模板参考文档

ERP(资源协同)管理平台测试报告 目录 ERP(资源协同)管理平台测试报告 1. 概述...

【BCC动态跟踪PostgreSQL】

BPF Compiler Collection (BCC)是基于eBPF的Linux内核分析、跟踪、网络监控工具。其源码存放于GitCode - 开发者的代码家园 想要监控PostgreSQL数据库的相关SQL需要在编译PostgreSQL的时候开启dtrace。下文主要介绍几个和PostgreSQL相关的工具,其他工具可根据需求自行了解。 …...

汽车架构解析:python cantools库快速解析arxml

文章目录 前言一、安装cantools二、官方说明文档三、cantools方法1、解析message的属性2、解析pdu中的signals3、根据message查找signals4、报文组成bytes 四、总结 前言 曾经有拿cantools来解析过dbc&#xff0c;用得比较浅&#xff0c;不知道可以用来解析arxml。最近有个需求…...

Vue 之 修饰符汇总

一、简介 在Vue中&#xff0c;修饰符是一种特殊的语法&#xff0c;用于修改指令或事件绑定的行为&#xff0c;它们以点号&#xff08;.&#xff09;的形式添加到指令或事件的后面&#xff0c;并可以改变其默认行为或添加额外的功能&#xff0c;如&#xff1a;禁止事件冒泡、数…...

Crypto-JS实战指南:如何构建可靠的浏览器端加密验证体系

Crypto-JS实战指南&#xff1a;如何构建可靠的浏览器端加密验证体系 【免费下载链接】crypto-js JavaScript library of crypto standards. 项目地址: https://gitcode.com/gh_mirrors/cr/crypto-js 在Web应用开发中&#xff0c;加密功能的正确性直接关系到用户数据安全…...

Comsol 多裂纹水力压裂扩展:拉伸与压缩下的破坏探索

comsol多裂纹水力压裂扩展&#xff0c;可以实现拉伸和压缩下的破坏。在工程领域&#xff0c;水力压裂是一项至关重要的技术&#xff0c;尤其在石油和天然气开采等方面应用广泛。而 Comsol 作为强大的多物理场仿真软件&#xff0c;为我们研究多裂纹水力压裂扩展提供了有力工具&a…...

终极指南:如何在浏览器中创建惊艳的WebGL流体模拟效果

终极指南&#xff1a;如何在浏览器中创建惊艳的WebGL流体模拟效果 【免费下载链接】WebGL-Fluid-Simulation Play with fluids in your browser (works even on mobile) 项目地址: https://gitcode.com/gh_mirrors/web/WebGL-Fluid-Simulation 想要在浏览器中体验令人惊…...

保姆级教程:手把手教你为Jetson Orin Nano刷入R36.4.4系统(从下载到开机)

从零开始&#xff1a;Jetson Orin Nano开发者套件系统刷入全流程实战指南 当你第一次拿到NVIDIA Jetson Orin Nano开发者套件时&#xff0c;那种兴奋感可能很快会被"我该如何开始"的困惑所取代。这款性能强大的边缘计算设备确实令人着迷&#xff0c;但如果没有正确的…...

实战调试:段页式内存管理中的首次页故障剖析

1. 段页式内存管理基础概念 段页式内存管理是现代操作系统的核心机制之一&#xff0c;它巧妙结合了分段和分页两种技术的优势。简单来说&#xff0c;就像我们整理衣柜时既按季节&#xff08;分段&#xff09;又用收纳盒&#xff08;分页&#xff09;来管理衣物。CPU看到的线性地…...

SDMatte数据库课程设计案例:电商商品图库智能管理系统

SDMatte数据库课程设计案例&#xff1a;电商商品图库智能管理系统 1. 项目背景与需求分析 电商平台每天需要处理大量商品图片&#xff0c;传统人工修图方式存在效率低、成本高、风格不统一等问题。某服装电商平台希望开发一套智能图库管理系统&#xff0c;能够自动完成商品图…...

一篇看懂原理、工作流与实战落地:收藏这份 AI Agent 学习指南,小白也能轻松入门大模型!

本文深入浅出地介绍了 AI Agent 的核心概念、工作原理以及实际应用。文章首先明确了 Agent 的本质是一个循环&#xff0c;由 LLM、工具和记忆三部分组成&#xff0c;并强调了 Agent 并不神秘&#xff0c;只是“增强版 LLM”。接着&#xff0c;文章指出了并非所有问题都需要 Age…...

OWL ADVENTURE应用场景解析:如何用AI助手提升工作效率

OWL ADVENTURE应用场景解析&#xff1a;如何用AI助手提升工作效率 1. 为什么选择OWL ADVENTURE作为AI助手 在当今快节奏的工作环境中&#xff0c;我们每天都要处理大量视觉信息——从产品图片到数据图表&#xff0c;从设计稿到文档扫描件。传统的工作流程往往需要人工逐一查看…...

WhisperX语音识别:如何实现70倍实时转录精度与词级时间戳?

WhisperX语音识别&#xff1a;如何实现70倍实时转录精度与词级时间戳&#xff1f; 【免费下载链接】whisperX m-bain/whisperX: 是一个用于实现语音识别和语音合成的 JavaScript 库。适合在需要进行语音识别和语音合成的网页中使用。特点是提供了一种简单、易用的 API&#xff…...

3大核心功能构建反检测浏览器:Camoufox实战指南

3大核心功能构建反检测浏览器&#xff1a;Camoufox实战指南 【免费下载链接】camoufox &#x1f98a; Anti-detect browser 项目地址: https://gitcode.com/gh_mirrors/ca/camoufox 在当今数据驱动的时代&#xff0c;网站反爬虫系统日益严苛&#xff0c;传统浏览器在访问…...