uniapp学习(004-2 组件 Part.2生命周期)

零基础入门uniapp Vue3组合式API版本到咸虾米壁纸项目实战,开发打包微信小程序、抖音小程序、H5、安卓APP客户端等

总时长 23:40:00 共116P

此文章包含第31p-第p35的内容


文章目录

  • 组件生命周期
    • 我们主要使用的三种生命周期
      • setup(创建组件时执行)
        • 不可以操作dom节点
      • onMounted(挂载到dom时执行)
        • 可以操作dom节点
      • onUnmounted(销毁前执行)
    • defineExpose 父组件直接获取子组件的数据
      • 暴露对象
      • 暴露方法
      • vue查看api
  • 页面生命周期
      • onload
      • 写一个跳转url
      • onReady
      • onShow和onHide
        • onShow
        • onHide
        • 例子
        • App.vue里也有生命周期(应用的生命周期)
          • 执行顺序
      • onUnload
      • onPageScroll 监听页面的滚动
    • 执行顺序

组件生命周期

在这里插入图片描述

在这里插入图片描述
小程序分应用生命周期,组件生命周期,页面生命周期
在这里插入图片描述

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

在这里插入图片描述

在这里插入图片描述

引用上方的链接的图片
在这里插入图片描述
在这里插入图片描述


vue3官方页面的查看方法
在这里插入图片描述

我们主要使用的三种生命周期

这里我们主要使用三种生命周期:setup(创建组件时运行)、onMounted(挂载到dom时运行) 、onUnmounted(销毁时)

setup(创建组件时执行)

不可以操作dom节点

在标签里添加 ref=“节点名”
在script里定义 这个节点 = ref(null); 这时候因为在setup生命周期里,我们无法得到dom

在这里插入图片描述
值为null
在这里插入图片描述

onMounted(挂载到dom时执行)

可以操作dom节点

在标签里添加 ref=“节点名”
在script里定义 这个节点 = ref(null); 这时候因为在setup生命周期里,我们无法得到dom

代表虚拟dom变成真实dom了之后执行
在这里插入图片描述
值为dom元素
在这里插入图片描述

在这里插入图片描述

ps:这个REF和vue3还不一样,vue3里的是dom,uniapp是proxy

onUnmounted(销毁前执行)

我们定义一个子组件,并且设置一个onUnmounted,在父组件上引用
在这里插入图片描述

我们设置一个定时器 2秒后v-if=false 销毁这个子组件
在这里插入图片描述
一开始
在这里插入图片描述

两秒后
在这里插入图片描述

defineExpose 父组件直接获取子组件的数据

翻译:
define 英[dɪˈfaɪn] 美[dɪˈfaɪn] 定义
expose 英[ɪkˈspəʊz] 美[ɪkˈspoʊz] 暴露


子组件
在这里插入图片描述

暴露对象

使用defineExpose 把子组件的count向外导出
名字一样可以简写,{count:count}可以简写成{count}
在这里插入图片描述

在父页面调用
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

暴露方法

在这里插入图片描述

调用子组件暴露的++方法,修改子组件的值

在这里插入图片描述
初始样式 在这里插入图片描述
点击后
在这里插入图片描述

vue查看api

在这里插入图片描述

在这里插入图片描述

页面生命周期

在这里插入图片描述

onload

onload生命周期位置(beforeCreate之前)
主要作用就是接收url上的参数

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

写一个跳转url

在这里插入图片描述

这里可以得到页面的url参数
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

onReady

类似组件生命周期里的onMounted
在这里插入图片描述
在dom上定义
在这里插入图片描述
在这里插入图片描述

onShow和onHide

onShow

在这里插入图片描述

离开页面后,在另一个页面点击返回箭头的时候触发onShow
在这里插入图片描述
在这里插入图片描述

onHide

在这里插入图片描述
当我们离开页面的时候触发

例子

写一个计数器,每50毫秒加一
在这里插入图片描述
在这里插入图片描述

离开页面的时候停止计数器
在这里插入图片描述

回归页面的时候开始计数器
在这里插入图片描述

App.vue里也有生命周期(应用的生命周期)

在这里插入图片描述

这里的onLaunch可以判断有无登录信息等
这里的onShow onHide是整个应用进入和离开的时候调用

执行顺序

进入时顺序
在这里插入图片描述

离开时顺序
在这里插入图片描述
不用的时候可以去掉日志打印
在这里插入图片描述

onUnload

在这里插入图片描述

使用navigator跳转并且销毁之前的页面的时候触发
销毁使用 open-type=“reLaunch”
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
跳转到demo4的时候调用了onUnload
在这里插入图片描述
可以对一些缓存信息进行清理
在这里插入图片描述

onPageScroll 监听页面的滚动

在这里插入图片描述
在这里插入图片描述
滚动时
在这里插入图片描述
大于200的时候显示回到顶部,小于200时隐藏
在这里插入图片描述
简化写法
在这里插入图片描述

执行顺序

在这里插入图片描述
在这里插入图片描述


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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

我对软件工程的理解

1 引言 从事软件行业这么年,写了10年代码,又从事了多年的项目产品方面的工作,一些每天用到的软件工程的方法,虽然天天都在用但一些概念总感觉似是而非,正好借假期的时间,好好整理下,以供自己或…

【你也能从零基础学会网站开发】浅谈一下SQL Server 2000中的NULL值到底有什么用处

🚀 个人主页 极客小俊 ✍🏻 作者简介:程序猿、设计师、技术分享 🐋 希望大家多多支持, 我们一起学习和进步! 🏅 欢迎评论 ❤️点赞💬评论 📂收藏 📂加关注 NULL 是什么 …

2d实时数字人聊天语音对话使用案例,对接大模型

参看: https://github.com/wan-h/awesome-digital-human-live2d 电脑环境: ubuntu 1060ti 下载: git clone https://github.com/wan-h/awesome-digital-human-live2d.gitdocker部署; cd awesome-digital-human-live2d docker-compose -f docker-compose-quickStart.ya…

Spring AI Java程序员的AI之Spring AI(一)

SpringAI 基础使用 前言Spring AIChatClientImageClientOpenAiAudioTranscriptionClientEmbeddingClient 总结 前言 Spring AI,听着名字就感觉很好使用,快速上手,虽然功能没有太完善,但是社区活跃度很高,可以看看源码…

大数据治理:构建数据驱动的智能决策体系

✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…

Edge论文的创新点

创新点及其来源 1. 从灰度边缘重建RGB图像的方法(EdgRec) 基于的方法:传统的重建方法,如使用自动编码器或生成模型来重建正常样本的图像,并通过对原始图像和重建图像的比较来检测异常。 重建过程: 训练阶…

Spring Boot: 构建高效中小型医院网站

1 绪论 1.1研究背景 随着计算机技术的成熟、普及,现代信息技术革命的迅猛发展,正冲击并进而改变着经济和社会结构。信息化的程度已经成为一个国家,一个企业,一个组织仍至一个人发展的基础和竞争成败的关键。 在实际的生活中,用户都…

Oracle Expdp按条件导出-指定表数据

1.场景描述 业务需求:导出A机构、2024的数据,以dmp格式,保留导出日志。首先,需要分析库中需要导出的表清单、表的机构字段约束、表的时间约束;然后再导出。 2.方案分析 本次采用Oracle的expdp数据泵方式导出&#xf…

集合框架12:Set集合概述、Set接口使用

视频链接:13.24 Set接口使用_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1zD4y1Q7Fw?spm_id_from333.788.videopod.episodes&vd_sourceb5775c3a4ea16a5306db9c7c1c1486b5&p24 1、Set集合概述 特点:无序、无下标,元素不可…

现今 CSS3 最强二维布局系统 Grid 网格布局

深入学习 CSS3 目前最强大的布局系统 Grid 网格布局 Grid 网格布局的基本认识 Grid 网格布局: Grid 布局是一个基于网格的二位布局系统,是目前 CSS 最强的布局系统,它可以同时对列和行进行处理(它将网页划分成一个个网格,可以任…

限流是什么?如何限流?怎么限流?

概述 什么是限流 对某一时间窗口内的请求数进行限制,保持系统的可用性和稳定性,防止因流量暴增而导致的系统运行缓慢或宕机 为什么要限流 因为互联网系统通常都要面对大并发大流量的请求,在突发情况下(最常见的场景就是秒杀、抢购),瞬时大流量会直接将系统打垮,无法…

DS堆的实际应用(10)

文章目录 前言一、堆排序建堆排序 二、TopK问题原理实战创建一个有一万个数的文件读取文件并将前k个数据创建小堆用剩余的N-K个元素依次与堆顶元素来比较将前k个数据打印出来并关闭文件 测试 三、堆的相关习题总结 前言 学完了堆这个数据结构的概念和特性后,我们来看…

DVWA | Files Upload(文件上传)通关笔记

概念 **文件上传漏洞**是网络安全中常见的漏洞之一,攻击者可以利用该漏洞上传恶意文件,进而在服务器上执行恶意代码、绕过权限验证或获取敏感数据。文件上传漏洞主要发生在允许用户上传文件的Web应用程序中,比如图像、文档上传功能等。 ###…

dayjs日期格式化,开发uniapp或unicloud前后端进行时间格式转换

一、 为什么要用日期格式化 因为在开发项目过程中,会遇到各种各样的日期格式,有的显示完整的年-月-日 时:分:秒,而有的场景就只显示月-日等格式,还有就是显示当前时间和注册时间的间隔时长等,场景非常多,如…

学习 Flutter 的最佳路线图

学习 Flutter 的最佳路线图 视频 https://youtu.be/IpKXVq9lP_4 https://www.bilibili.com/video/BV1J92uYDEit/ 前言 原文 Flutter 开发者必看:全面的学习路线图 本文借鉴了 roadmap 的思路,为大家介绍如何有效学习 Flutter。 该路线图提供了从零开…

MySQL-DQL练习题

文章目录 简介初始化表练习题 简介 本节简介: 主要是一些给出一些习题, 关于DQL查询相关的, DQL查询语句是最重要的SQL语句, 功能性最复杂, 功能也最强, 所以本节建议适合以及有了DQL查询基础的食用, 另外注意我们使用的是Navicat, SQL编辑的格式规范也是Navicat指定的默认格式…

uni-app uni.setTabBarBadge 不生效

‘text’属性,类型必须是字符串,而接口返回的是数值,没有注意到,所以怎么都不生效,也不会有报错!

基于一个python库tencent的API接口开发有趣应用

这篇博客给大家介绍一个python库 tencent (https://pypi.org/project/tencent/) 以及对应三方API的开发流程,以公众号后台通过服务器接入自动系统回复为例。基于微信公众号后台开发自动回复,或者利用多模态信息回复用户输入,需要自己有独立服…

python爬虫实战案例——从移动端接口抓取微博评论,采用cookie登陆,数据存入excel表格,超详细(15)

文章目录 1、任务目标2、网页分析3、代码编写3.1 代码分析3.2 完整代码1、任务目标 1、目标网站:微博文章(https://m.weibo.cn/detail/4813628149072458),这是微博某一篇博文,用于本文测试 2、要求:爬取该博文下,所有一级评论和二级评论,以及每条评论的作者,最后保存至E…

【Kafka】Kafka源码解析之producer过程解读

从本篇开始 打算用三篇文章 分别介绍下Producer生产消费,Consumer消费消息 以及Spring是如何集成Kafka 三部分,致于对于Broker的源码解析,因为是scala语言写的,暂时不打算进行学习分享。 总体介绍 clients : 保存的是Kafka客户端…