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

Vue封装的过度与动画(transition-group、animate.css)

目录

  • 1. Vue封装的过度与动画
    • 1.1 动画效果1
    • 1.2 动态效果2
    • 1.3 使用第三方动画库animate.css

1. Vue封装的过度与动画

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

1.1 动画效果1

Test1.vue:

  • transition内部只能包含一个子标签。包裹要过渡的元素。基本原理是Vue会在合适的时候自动给子标签添加不同的class样式属性
  • 使用了name属性就可以分别控制多个动画了
  • appear属性第一次显示的时候就有动画效果。相当于:appear="true"
<template><div><button @click="isShow = !isShow">显示/隐藏</button><transition name="trans1" appear><h1 v-show="isShow">你好啊</h1></transition></div>
</template><script>export default {name:'Test1',data() {return {isShow:true}}}
</script><style scoped>h1{background-color: orange;}<!-- 元素进入过程中 -->.trans1-enter-active{animation: myFlash 0.5s linear;}<!-- 元素离开过程中 -->.trans1-leave-active{animation: myFlash 0.5s linear reverse;}<!-- 准备的动画 -->@keyframes myFlash {from{transform: translateX(-100%);}to{transform: translateX(0px);}}
</style>

动画效果静态时如下:
动画效果1

1.2 动态效果2

Test2.vue:

  • 有多个元素需要过度,可以使用<transition-group>,且每个元素都要指定key值
<template><div><button @click="isShow = !isShow">显示/隐藏</button><transition-group name="trans1" appear><h1 v-show="!isShow" key="1">你好啊</h1><h1 v-show="isShow" key="2">jack</h1></transition-group></div>
</template><script>export default {name:'Test2',data() {return {isShow:true}}}
</script><style scoped>h1{background-color: orange;}/* 进入的起点、离开的终点 */.trans1-enter,.trans1-leave-to{transform: translateX(-100%);}/* 进入的终点、离开的起点 */.trans1-enter-to,.trans1-leave{transform: translateX(0);}.trans1-enter-active,.trans1-leave-active{transition: 0.5s linear;}
</style>

动画效果静态时如下:
动画效果2

1.3 使用第三方动画库animate.css

使用cnpm install animate.css安装第三方动画库。想要更多可以去https://www.npmjs.com/进行搜索。还要另外两种方式引入animate.css文件

  1. 直接下载animate.css文件,放到src/assets/css路径下,然后通过import ./assets/css/animate.css进行引入
  2. 直接下载animate.css文件,放到public/css路径下,然后在index.html页面中通过<style rel="stylesheet" href="<%= BASE_URL %>css/animate.css"></style>进行引入

Test3.vue:直接在transition-group指定属性就可以了。指定的属性可以去https://animate.style/官网去查看

<template><div><button @click="isShow = !isShow">显示/隐藏</button><transition-group appearname="animate__animated animate__bounce" enter-active-class="animate__swing"leave-active-class="animate__backOutUp"><h1 v-show="!isShow" key="1">你好啊</h1><h1 v-show="isShow" key="2">jack</h1></transition-group></div>
</template><script>import 'animate.css'export default {name:'Test3',data() {return {isShow:true}}}
</script><style scoped>h1{background-color: orange;}</style>

动画效果静态时如下:
动画效果3

相关文章:

Vue封装的过度与动画(transition-group、animate.css)

目录 1. Vue封装的过度与动画1.1 动画效果11.2 动态效果21.3 使用第三方动画库animate.css 1. Vue封装的过度与动画 作用&#xff1a;在插入、更新或移除DOM元素时&#xff0c;在合适的时候给元素添加样式类名 1.1 动画效果1 Test1.vue: transition内部只能包含一个子标签。…...

免费云服务器申请教程

免费云服务器的申请流程通常包括以下几个步骤&#xff0c;但请注意&#xff0c;不同云服务提供商的具体步骤可能略有不同。以下是一个通用的申请流程&#xff1a; 一、选择合适的云服务提供商 首先&#xff0c;需要选择一家提供免费云服务器服务的云服务提供商。 免费云服务器汇…...

Spring Cloud Gateway中的常见配置

问题 最近用到了Spring Cloud Gateway&#xff0c;这里记录一下这个服务的常见配置。 spring:data:redis:host: ${REDIS_HOST:xxx.xxx.xxx.xxx}port: ${REDIS_PORT:2345wsd}password: ${REDIS_PASS:sdfsdfgh}database: ${REDIS_DB:8}session:redis:flush-mode: on_savenamespa…...

SelectDB 多计算集群核心设计要点揭秘与场景应用

需求起源 SelectDB 设计多计算集群架构初衷主要源于两类典型的使用场景&#xff1a; 写入与读取隔离&#xff1a;传统数仓架构中&#xff0c;数据的写入和读取在同一个计算集群&#xff0c;当遇到业务写入高峰期或突增的写入压力时&#xff0c;容易因资源相互抢占影响查询服务…...

Docker 清理和查看镜像与容器占用情况

查看容器占用磁盘大小 docker system df 查看单个image、container大小&#xff1a; docker system df -v 清理所有废弃镜像与Build Cache docker system prune -a...

如何在Android 12 aosp系统源码中添加三指下滑截图功能

如何在Android 12 aosp系统源码中添加三指下滑截图功能 系统中截图api非常简单&#xff1a; private static ScreenshotHelper sScreenshotHelper;sScreenshotHelper new ScreenshotHelper(mContext);//调用 sScreenshotHelper.takeScreenshot(WindowManager.TAKE_SCREENSHO…...

使用SQL语句查询MySQL数据表

6.1 创建单表基本查询 1&#xff0e;Select 语句的语法格式及其功能 &#xff08;1&#xff09;Select 语句的一般格式。 Select < 字段名称或表达式列表 > From < 数据表名称或视图名称 > [ Where < 条件表达式 > ] [ Group By < 分组的字段名称…...

【AI绘画、换脸、写作、办公】从零开始:使用AIStarter启动器发布AI应用

随着人工智能技术的快速发展&#xff0c;越来越多的开发者希望通过自己的创意来构建和分享AI应用。AIStarter启动器正是为此而设计的一个强大工具&#xff0c;它可以帮助开发者轻松打包并发布自己的AI应用项目。本文将详细介绍如何使用AIStarter启动器来实现这一目标。 注册账…...

eeprom使用 cubemx STM32F407ZGT6【IIC驱动AT24C02】

存储器的简单介绍 ROM&#xff08;只读存储器&#xff09;、RAM&#xff08;随机存取存储器&#xff09;、Flash&#xff08;闪存&#xff09;、和EEPROM&#xff08;电可擦可编程只读存储器&#xff09;是四种不同类型的存储介质。ROM用于存储固件或永久数据&#xff0c;不易…...

STL-stack/queue/deque(容器适配器)

目录 ​编辑 STL-stack 150. 逆波兰表达式求值 stack queue std::stack deque 性能测试 结构 STL-stack 栈的压入、弹出序列_牛客题霸_牛客网输入两个整数序列&#xff0c;第一个序列表示栈的压入顺序&#xff0c;请判断第二个序列是否可能为该栈的弹出顺序。假。题目…...

NVDLA专题15:Runtime environment-核心模式驱动

核心模式驱动&#xff08;Kernel Mode Driver&#xff09; KMD主入口点在内存中接收一个推理作业&#xff0c;从多个可用的作业中选择要执行的作业(如果在多进程系统上)&#xff0c;并将其提交给核心引擎调度程序。该核心引擎调度程序负责处理来自NVDLA的中断&#xff0c;调度每…...

计算机毕业设计选题推荐-班级管理系统-教务管理系统-Java/Python项目实战

✨作者主页&#xff1a;IT研究室✨ 个人简介&#xff1a;曾从事计算机专业培训教学&#xff0c;擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Python…...

推荐一款开源、高效、灵活的Redis桌面管理工具:Tiny RDM!支持调试与分析功能!

1、引言 在大数据和云计算快速发展的今天&#xff0c;Redis作为一款高性能的内存键值存储系统&#xff0c;在数据缓存、实时计算、消息队列等领域发挥着重要作用。然而&#xff0c;随着Redis集群规模的扩大和复杂度的增加&#xff0c;如何高效地管理和运维Redis数据库成为了许…...

Java项目: 基于SpringBoot+mybatis+maven新闻推荐系统(含源码+数据库+毕业论文)

一、项目简介 本项目是一套基于SpringBootmybatismaven新闻推荐系统 包含&#xff1a;项目源码、数据库脚本等&#xff0c;该项目附带全部源码可作为毕设使用。 项目都经过严格调试&#xff0c;eclipse或者idea 确保可以运行&#xff01; 该系统功能完善、界面美观、操作简单、…...

《Python读取 Excel 数据》

关于如何在 Python 中读取excel数据。 方法一&#xff1a; 我们可以使用 pandas 库来读取 Excel 数据。 通过以下命令安装&#xff1a; pip install pandas 以下是读取 Excel 数据的代码&#xff1a; import pandas as pd # 读取 Excel 文件 data pd.read_excel(…...

Druid连接池

一.什么是Druid连接池&#xff1f; Druid 是阿里巴巴开源的一款数据库连接池&#xff08;Database Connection Pool&#xff09;&#xff0c;具有高效、稳定、安全等特点。除了连接池的功能外&#xff0c;Druid 还提供了强大的 SQL 监控、统计、日志记录、防火墙等功能。它主要…...

Python3网络爬虫开发实战(14)资讯类页面智能解析

文章目录 一、详细页智能解析算法1.1 提取标题1.2 提取正文1.3 提取时间 二、列表页智能解析算法三、智能分辨列表页和详细页四、完整的库4.1 参考文献4.2 Project 页面智能解析就是利用算法从页面的 HTML 代码中提取想要的内容&#xff0c;算法会自动计算出目标内容在代码中的…...

社交媒体的未来:Facebook如何通过AI技术引领潮流

在数字化时代的浪潮中&#xff0c;社交媒体平台不断演变&#xff0c;以适应用户需求和技术发展的变化。作为全球领先的社交媒体平台&#xff0c;Facebook在这一进程中扮演了重要角色。尤其是人工智能&#xff08;AI&#xff09;技术的应用&#xff0c;正在深刻地改变Facebook的…...

Java 面试题:从源码理解 ThreadLocal 如何解决内存泄漏 ConcurrentHashMap 如何保证并发安全 --xunznux

文章目录 ThreadLocalThreadLocal 的基本原理ThreadLocal 的实现细节内存泄漏源码使用场景 ConcurrentHashMap 怎么实现线程安全的CAS初始化源码添加元素putVal方法 ThreadLocal ThreadLocal 是 Java 中的一种用于在多线程环境下存储线程局部变量的机制&#xff0c;它可以为每…...

使用人力劳务灵工安全高效的发薪工具

实现企业、劳务、蓝领工人三方的需求撮合、劳务交付、日结考勤、薪费结算一体化闭环,全面为人力企业降低用工成本、提高用工效率。 发薪难 日结/周结/临时工人员难管理&#xff0c;考勤难统计&#xff0c;发薪耗时间 发薪慢 人工核算时间长&#xff0c;微信转账发薪容易限额…...

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…...

Day131 | 灵神 | 回溯算法 | 子集型 子集

Day131 | 灵神 | 回溯算法 | 子集型 子集 78.子集 78. 子集 - 力扣&#xff08;LeetCode&#xff09; 思路&#xff1a; 笔者写过很多次这道题了&#xff0c;不想写题解了&#xff0c;大家看灵神讲解吧 回溯算法套路①子集型回溯【基础算法精讲 14】_哔哩哔哩_bilibili 完…...

《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析 (一)

CSI-2 协议详细解析 (一&#xff09; 1. CSI-2层定义&#xff08;CSI-2 Layer Definitions&#xff09; 分层结构 &#xff1a;CSI-2协议分为6层&#xff1a; 物理层&#xff08;PHY Layer&#xff09; &#xff1a; 定义电气特性、时钟机制和传输介质&#xff08;导线&#…...

全球首个30米分辨率湿地数据集(2000—2022)

数据简介 今天我们分享的数据是全球30米分辨率湿地数据集&#xff0c;包含8种湿地亚类&#xff0c;该数据以0.5X0.5的瓦片存储&#xff0c;我们整理了所有属于中国的瓦片名称与其对应省份&#xff0c;方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...

MVC 数据库

MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...

OpenLayers 分屏对比(地图联动)

注&#xff1a;当前使用的是 ol 5.3.0 版本&#xff0c;天地图使用的key请到天地图官网申请&#xff0c;并替换为自己的key 地图分屏对比在WebGIS开发中是很常见的功能&#xff0c;和卷帘图层不一样的是&#xff0c;分屏对比是在各个地图中添加相同或者不同的图层进行对比查看。…...

Device Mapper 机制

Device Mapper 机制详解 Device Mapper&#xff08;简称 DM&#xff09;是 Linux 内核中的一套通用块设备映射框架&#xff0c;为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程&#xff0c;并配以详细的…...

基于matlab策略迭代和值迭代法的动态规划

经典的基于策略迭代和值迭代法的动态规划matlab代码&#xff0c;实现机器人的最优运输 Dynamic-Programming-master/Environment.pdf , 104724 Dynamic-Programming-master/README.md , 506 Dynamic-Programming-master/generalizedPolicyIteration.m , 1970 Dynamic-Programm…...

Linux --进程控制

本文从以下五个方面来初步认识进程控制&#xff1a; 目录 进程创建 进程终止 进程等待 进程替换 模拟实现一个微型shell 进程创建 在Linux系统中我们可以在一个进程使用系统调用fork()来创建子进程&#xff0c;创建出来的进程就是子进程&#xff0c;原来的进程为父进程。…...

springboot 日志类切面,接口成功记录日志,失败不记录

springboot 日志类切面&#xff0c;接口成功记录日志&#xff0c;失败不记录 自定义一个注解方法 import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target;/***…...