Vue (9)

news2024/11/25 18:56:51

Vue (9)

文章目录

  • 1. 消息订阅与发布
    • 1.1 总结
    • 1.2 修改 TodoList 案例
  • 2. 为 TodoList 添加编辑功能
  • 3. $nextTick
  • 4. 过度与动画
    • 4.1 动画效果
    • 4.2 过度效果
    • 4.3 集成第三方动画
    • 4.4 总结
    • 4.5 修改 TodoList 案例

1. 消息订阅与发布

上文我们已经将全局事件总线学完了知道了全局事件总线能够实现任意组件间通信 , 这里在来学一个同样可以实现任意组件间通信的技术 : 消息订阅与发布

图一 :

在这里插入图片描述


图二 :

在这里插入图片描述


图三 :

在这里插入图片描述


图四 :

在这里插入图片描述

1.1 总结

消息订阅与发布 (pubsub)

  1. 一种组件间通信的方式 , 适用于 任意组件间通信

  2. 使用步骤 :

    a. 安装 pubsub : npm i pubsub-js

    b. 引入 : import pubsub from 'pubsub-js'

    c. 接收数据 : A 组件逍遥接收数据, 则 在 A 组件中订阅消息 , 订阅的消息 回调留在 A 组件自身

    methods(){
    	demo(data){.......}
    }
    
    .......
    mounted(){
    	this.pid = pubsub.subscribe('xxx',this.demo) //订阅消息
    }
    

    d. 提供数据 : pubsub.publish('xxx',数据)

    e. 最好在 beforeDestroy 钩子中 用 pubsub.unsbscribe(pid)取消订阅

1.2 修改 TodoList 案例


上面我们学习完 消息订阅与发布,那么就来修改一下 TodoList 案例,使用 消息订阅与发布,让组件之间传递数据.

在这里插入图片描述

2. 为 TodoList 添加编辑功能


图一 :

在这里插入图片描述


图二 :

在这里插入图片描述


图三 :

在这里插入图片描述


图四 :

在这里插入图片描述


图五 :

在这里插入图片描述


解决错误:Do not access Object.prototype method ‘hasOwnProperty‘ from target object no-prototype-builtins

图六 :

在这里插入图片描述

3. $nextTick


图一 :

在这里插入图片描述


图二 :

在这里插入图片描述

4. 过度与动画

在这里插入图片描述

4.1 动画效果

图一 :

在这里插入图片描述


图二 :

在这里插入图片描述


图三 :

在这里插入图片描述


图四 :

在这里插入图片描述

4.2 过度效果

上面使用动画完成了需求 ,下面我们来通过 过度来完成 .


图一 :

在这里插入图片描述


图二 :

在这里插入图片描述


图三 :

在这里插入图片描述


单个元素过度完成 ,下面我们来学习一下 多个元素过度.

在这里插入图片描述

4.3 集成第三方动画


上面的过度 和 动画都是我们自己写的,其实再 vue 中 ,我们可以很轻松的集成别人写好的动画库 或 样式库 来 辅助我们 快速 实现 动画效果 达到简化开发.


下面就来推荐一个 : npm 上 animate.css , 跳转连接 : Animate.css


图一 :

在这里插入图片描述


图二 :

在这里插入图片描述

4.4 总结


Vue 封装的过度与动画

  1. 作用 : 在 插入 , 更新或移除 DOM 元素时 , 在合适的时候给元素添加样式类名.

  2. 图示

在这里插入图片描述

  1. 写法 :

    a. 准备好样式

    • 元素进入的样式 :

      1. v-enter : 进入的起点
      
      2. v-enter-active : 进入过程中
      
      3. v-enter-to : 进入的终点
      
    • 元素离开的样式

      1. v-leave : 离开的起点
      
      2. v-leave-active : 离开的过程中
      
      3. v-leave-to : 离开的终点
      

    b. 使用 <transition> 包裹 要过度的元素 ,并配置 name 属性 :

    <transition name = "hello">
        <h1 v-show = "isShow">
            你好啊!
        </h1>
    </transition>
    

    c. 备注 : 若有多个元素需要使用过度,则需要使用 : <transition-group> , 且每个元素都要制定 key 值.

学习完过度与动画 ,接下来我们来修改一下 TodoList , 给 TodoList 中的某个功能改为过度与动画效果

4.5 修改 TodoList 案例


图一 :

在这里插入图片描述

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

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

相关文章

day6 -- 数据的分组和描述性统计

学习内容 描述性统计函数&#xff0c;包括平均值&#xff0c;最大/小值&#xff0c;行数&#xff0c;总和使用 GROUP BY子句和HAVING子句 对数据进行分组操作 描述性统计数函数 除了上面提到的聚合函数外&#xff0c;MySQL还提供了以下其他一些常用的聚合函数&#xff1a; – …

Python学习40:维吉尼亚密码——解密

凯撒密码的加密强度是很低的&#xff0c;只需简单地统计字频就可以破译。人们在单一凯撒密码的基础上扩展出多表密码&#xff0c;称为“维吉尼亚”密码。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪…

【环境搭建】一些奇奇怪怪的环境问题

【设备信息】我的设备是4070ti&#xff0c;支持cuda12.0,但是目前用的还是11.7 1&#xff09;fatal error: cusparse.h: No such file or directory 因为cuda版本和改名的原因&#xff0c;这个在cuda版本中比较有效的解决办法是&#xff1a; sudo apt search libcusparse得到…

基于SpringBoot+Vue的自习室预订系统设计与实现

博主介绍&#xff1a; 大家好&#xff0c;我是一名在Java圈混迹十余年的程序员&#xff0c;精通Java编程语言&#xff0c;同时也熟练掌握微信小程序、Python和Android等技术&#xff0c;能够为大家提供全方位的技术支持和交流。 我擅长在JavaWeb、SSH、SSM、SpringBoot等框架下…

C/C++开发,opencv读写图像函数详解

目录 一、cv::imread函数读取图像 1.1 imread函数 1.2 imread函数的参数解析 1.3 imread函数实践案例 1.4 编译及测试 二、cv::imwrite函数存储图像 2.1 cv::imwrite函数 2.2 imwrite函数参数解析 2.3 imwrite函数实践案例 2.4 编译及测试 一、cv::imread函数读取图像 1.1 im…

Lecture 5 Part of Speech Tagging

目录 POS application: Information Extraction 词性应用&#xff1a;信息提取 POS Open Class 开放类词性Problem of word classes: Ambiguity 词类问题&#xff1a;模糊性Tagsets 标记集Penn Treebank Tags:Derived Tags: 衍生标签Tagged Text Example 标记文本示例Reasons f…

Java 字符串基本操作

一、Java 字符串比较 1、equals用法 String类覆盖了Object类的equals()方法&#xff0c;并提供了自己的实现&#xff0c;它根据它们的内容比较两个字符串的相等性。 equals() 方法用于将字符串与指定的对象比较。 语法 public boolean equals(Object anObject)参数 anObje…

Dockerfile常用指令及其含义

编写dockerfile文件中常用指令&#xff1a; 指令说明FROM指明当前的镜像基于哪个镜像构建:LABEL标记镜像信息&#xff0c;添加元数据ARG定义构建镜像过程中使用的变量ENV指定环境变量VOLUME创建一个数据卷挂载点USER指定运行容器时的用户名或 UIDWORKDIR配置工作目录EXPOSE容器…

chatgpt赋能python:Python区分:为什么选择python?

Python区分&#xff1a;为什么选择python&#xff1f; Python是一种高级语言&#xff0c;一种功能强大且易于学习的编程语言。 它可用于各种领域&#xff0c;包括科学计算&#xff0c;Web开发和数据分析等。 Python的简单性和灵活性使其成为许多行业和开发者的首选编程语言。 …

R语言 tidyverse系列学习笔记(持续更新)

tidyverse 译 “洁净的宇宙” > “极乐净土” 以 iris 鸢尾花数据集为例 ** 查看数据集** ** 查看维度dimention** dim(iris)iris 数据集有150个对象&#xff08;observation&#xff09;&#xff0c;5列 ( Sepal.Length , Sepal.Width , Petal.Length , Petal.Width , Spe…

大疆无人机 MobileSDK(遥控器/手机端)开发 v5版<2>

前言 v5.x版本的功能与v4.x基本相同,都是获取飞机的姿态信息、获取无人机多媒体文件、操作多媒体文件、航线规划等。不过在上一章节中也大致说了一些两个版本的中API的差别,下面是根据一些API使用所完成的一些功能,因为项目原因只能提供部分代码供参考,后续如果有这方面需…

零基础开发小程序第五课-修改数据

目录 1 创建修改页面2 创建远程数据3 给组件绑定默认值4 从详情页跳转到更新页5 刷新页面总结 新手开发往往对修改和删除的功能不是特别理解。我们先按照开发的思路捋一下逻辑&#xff0c;如果想修改数据&#xff0c;首先需要知道修改哪一条数据&#xff0c;然后要把上一次存储…

DINO代码学习笔记(一)

先上官方架构图&#xff1a; 论文地址&#xff1a;https://arxiv.org/pdf/2203.03605.pdf 代码地址&#xff1a;GitHub - IDEA-Research/DINO: [ICLR 2023] Official implementation of the paper "DINO: DETR with Improved DeNoising Anchor Boxes for End-to-End Objec…

什么是数据可视化测试?

在我们日益由数据驱动的世界中&#xff0c;拥有可访问的方式来查看和理解数据比以往任何时候都更加重要。毕竟&#xff0c;员工对数据技能的需求每年都在稳步增长。各级员工和企业主都需要了解数据及其影响。 这就是数据可视化派上用场的地方。为了使数据更易于访问和理解&…

在nodejs addon 环境下抓视频和音频数据包

在node addon 环境下开发音视频&#xff0c;需要用到 gyp 。这个配置比较简单&#xff0c;很快可以配置好。比较坑的是&#xff0c;在vscode 开发环境下&#xff0c; 如果装了conda 或者 mini conda . 有可能会影响gpy程序的编译。谨慎起见&#xff0c;可以看看控制台是否有 …

好物周刊#2:AI 写作助手

不要哀求&#xff0c;学会争取。若是如此&#xff0c;终有所获。 &#x1f388; 项目 vue-fabric-editor 基于 fabric.js 和 Vue 的图片编辑器&#xff0c;可自定义字体、素材、设计模板。 目前已支持以下功能&#xff1a; 导入 JSON 文件保存为 PNG、SVG、JSON 文件插入 S…

我与 INDCODE AI 创作助手的一次对话

本文由 大侠(AhcaoZhu)原创&#xff0c;转载请声明。 链接: https://blog.csdn.net/Ahcao2008 我与INDCODE AI 创作助手的一次对话 &#x1f9ca;摘要&#x1f9ca;前言&#x1f9ca;对话内容&#x1f9ca;结束语 &#x1f9ca;摘要 本文介绍了 CSDN 嵌入式INSCODE AI 创作助手…

msvcr120.dll丢失怎样修复

MSVCR120.dll是Windows操作系统上一个非常重要的动态链接库文件&#xff0c;它包含了一些运行时库函数&#xff0c;被许多应用程序用来进行编译和运行。如果该文件丢失或损坏&#xff0c;很多应用程序就无法正常运行&#xff0c;这可能会带来一些麻烦。本篇文章将详细介绍MSVCR…

FAT32文件系统详解

FAT32文件系统详细分析 &#xff08;续FAT文件系统详解&#xff09; 文章目录 FAT32文件系统详细分析 &#xff08;续FAT文件系统详解&#xff09;1. 前言2. 格式化SD nand/SD卡3. FAT32文件系统分析3.1 保留区分析3.1.1 BPB(BIOS Parameter Block) 及BS区分析3.1.2 FSInfo 结构…

SpringCloud_微服务基础day1(走进微服务,认识springcloud,微服务(图书管理)项目搭建(一))

官方网站&#xff1a;柏码 - 让每一行代码都闪耀智慧的光芒&#xff01; (itbaima.net) p1:前言&#xff0c;走进微服务 注意&#xff1a;此阶段学习推荐的电脑配置&#xff0c;至少配备4核心CPU&#xff08;主频3.0Ghz以上&#xff09;16GB内存&#xff0c;否则卡到你怀疑人生…