VUE学习-过渡 & 动画
过渡 & 动画
Vue 在插入、更新或者移除 DOM 时,提供多种不同方式的应用过渡效果。包括以下工具:
- 在 CSS 过渡和动画中自动应用 class
- 在过渡钩子函数中使用 JavaScript 直接操作 DOM
- 可以配合使用第三方 CSS 动画库,如 Animate.css
- 可以配合使用第三方 JavaScript 动画库,如 Velocity.js
过渡类
如果你使用一个没有名字的 <transition>,则 'v-' 是这些类名的默认前缀。
- v-enter:定义进入过渡的开始状态。在元素被插入之前生效,在元素被插入之后的下一帧移除。
- v-enter-active:定义进入过渡生效时的状态。在元素被插入之前生效,在过渡/动画完成之后移除。这个类可以被用来定义进入过渡的过程时间,延迟和曲线函数。
- v-enter-to:2.1.8 版及以上定义进入过渡的结束状态。在元素被插入之后下一帧生效 (与此同时 v-enter 被移除),在过渡/动画完成之后移除。
- v-leave:定义离开过渡的开始状态。在离开过渡被触发时立刻生效,下一帧被移除。
- v-leave-active:定义离开过渡生效时的状态。在离开过渡被触发时立刻生效,在过渡/动画完成之后移除。这个类可以被用来定义离开过渡的过程时间,延迟和曲线函数。
- v-leave-to:2.1.8 版及以上定义离开过渡的结束状态。在离开过渡被触发之后下一帧生效 (与此同时 v-leave 被删除),在过渡/动画完成之后移除。
自定义过渡类名
便于引入第三方动画库,自定义类名优先级高于普通的类名
<link href="https://cdn.jsdelivr.net/npm/animate.css@3.5.1" rel="stylesheet" type="text/css">
<div id="demo">
<button v-on:click="show = !show">Toggle</button>
<transition name="fade" enter-active-class="animated tada" leave-active-class="animated bounceOutRight">
<p v-if="show">hello</p>
</transition>
</div>
JS钩子函数
- before-enter:function(el){ ... },
- enter:function(el , done){ ... },
- after-enter:function(el){ ... },
- enter-cancelled:function(el){ ... },
- before-leave:function(el){ ... },
- leave:function(el , done){ ... },
- after-leave:function(el){ ... },
- leave-cancelled:function(el)
当只用 JavaScript 过渡的时候,在 enter 和 leave 中必须使用 done 进行回调。否则,它们将被同步调用,过渡会立即完成。
推荐对于仅使用 JavaScript 过渡的元素添加 v-bind:css="false",Vue 会跳过 CSS 的检测。
<transition>
- name : 过渡名
- enter-class,enter-active-class,enter-to-class,leave-class,leave-active-class,leave-active-class :指定过渡阶段类名
- duration :[ms | {enter: ms, leave: ms}]
- mode: 过渡模式
- in-out:新元素先进行过渡,完成之后当前元素过渡离开。
- out-in:当前元素先进行过渡,完成之后新元素过渡进入。
<transition-group>
- 不同于
<transition>,它会以一个真实元素呈现:默认为一个<span>。可以借助tag改成其他标签。 - 过渡模式不可用,因为我们不再相互切换特有的元素。即mode不适用。
- 内部元素总是需要提供唯一的 key attribute 值。
- CSS 过渡的类将会应用在内部的元素中,而不是这个组/容器本身。
- 不仅可以进入和离开动画,还可以改变定位。
- 属性
- name:过渡名
- tag:设置标签
- enter-class,enter-active-class,enter-to-class,leave-class,leave-active-class,leave-active-class :指定过渡阶段类名
- move-class:在元素的改变定位中应用
VUE学习-过渡 & 动画的更多相关文章
- VUE:过渡&动画
VUE:过渡&动画 vue动画的理解 1)操作css的 trasition 或 animation 2)vue会给目标元素添加/移除特定的class 3)过渡的相关类名 xxx-enter-a ...
- Vue相关(过渡动画)
Vue 过渡 && 动画 一.CSS过渡 1.transition标签可以用来封装需要过渡的元素,添加entering/leaving 过渡, 条件是: (1)使用条件渲染语句 v-i ...
- Vue学习之动画小结(六)
一.Vue中实现动画的方式:https://cn.vuejs.org/v2/guide/transitions.html Vue 在插入.更新或者移除 DOM 时,提供多种不同方式的应用过渡效果.包括 ...
- vue的过渡动画在除了chrome浏览器外的浏览器下不正常的问题
为过渡动画添加mode="out-in"在其它浏览器下面就能正常的使用了
- vue.js 过渡&动画
9-17 在add ,update, remove DOM时 提供多种方式的应用过度效果. 包括以下可选工具:(2大类,css和js) 在css过度和动画中自动应用class 配合使用第三方css动画 ...
- Vue过渡动画—Vue学习笔记
要求:要通过Vue使用过渡动画我们要把需要过度的元素放在<transition name='变量名'></transition>中. 原理:通过在特定的时刻增加/移除样式实现. ...
- Vue过渡动画运用transition
vue的过渡动画,主要是transition标签的使用,配合css动画实现的.官方文档css过渡 通过点击事件来切换show的值来改变显示的文本,下面的css通过进入离开时的在匀速状态下xxs(秒)下 ...
- (学习心路历程)Vue过渡/动画 VS. 过渡/动画
[此篇为本人的个人见解和哔哔赖赖,如果有观点不对的地方,还请大家指出来哇!!] 最近实习在做一个项目,里面应用的动画效果还蛮复杂的,因为本身对Vue框架比较熟悉,所以最终选择了Vue框架. 自己之前从 ...
- vue过渡动画
概述 Vue 在插入.更新或者移除 DOM 时,提供多种不同方式的应用过渡效果.包括以下工具: 在 CSS 过渡和动画中自动应用 class 可以配合使用第三方 CSS 动画库,如 Animate.c ...
- vue开发移动端项目 过渡动画问题
App.vue: <div id="app"> <div class="content"> <transition :name ...
随机推荐
- linux配置本地yum源实现在局域网中在线安装软件包
安装linux下安装软件需要安装一系列的rpm包,用rpm -ivh xx和yum install xx 如果用rpm安装软件包的时候,需要自己下载rpm安装包,如果rpm包不全总是提示依赖检查失败或 ...
- 使用插件式开发称重仪表驱动,RS232串口对接各类地磅秤数据实现ERP管理
在ERP系统中,采集一线的生产数据是重要工作之一,而称重计量是企业的核心资产数据,人工计重费时费力,还容易出错,重量数据是否正确,直接影响企业的采购或销售额.基于此,由系统对接电子秤实现自动抓取数据是 ...
- [Python]Python调用Matlab (Pycharm版本)
目录 第一步:生成Build文件夹 第二步: 复制build文件夹到Pycharm下 第三步:调用代码 第一步:生成Build文件夹 C:\Program Files\MATLAB\R2016a\ex ...
- Winform DataGridViewTextBoxCell 编辑添加右键菜单,编辑选中文本
如上是我们使用DataGridView时,编辑单元格右键会出现系统菜单.现在我们添加自己的右键菜单,并可以操作选中文字. DataGridViewTextBoxCell: DataGridViewTe ...
- 本地文件上传 Gitee 和 GitHub
新建仓库 上 GitHub 或者是 gitee 创建仓库 在所在的文件夹打开终端 在本地项目文件夹打开终端, 或者 cd 到本地项目文件夹 配置提交项目的用户名和提交项目的邮箱 git config ...
- MySQL 表的创建、复制、修改与删除
MySQL中如何利用代码完成表的创建.复制.修改和删除. 一.创建表 --创建新表,如果存在则覆盖 drop table [if exists] 表名; --创建新表,如果存在则返回 create t ...
- MySQL 不四舍五入取整、取小数、四舍五入取整、取小数、向下、向上取整
总结了MySQL中取整和取小数中遇到的问题和解决的几个方法:不四舍五入取整.取小数.四舍五入取整.取小数.向下.向上取整. 其中: 不四舍五入取整(截取整数部分)就是'向下取整': 除了用trunca ...
- Java 进阶P-8.3+P-8.4
捕捉到的异常 捉到了做什么? 拿到异常对象之后 String getMessage(); String toSTring(); void printStackTrace(); 但是肯定时回不去了,而具 ...
- List_集合_介绍&常用方法-ArrayList集合
List_集合_介绍&常用方法 我们掌握了Collection接口的使用后,再来看看Collection接口中的子类,他们都具备那些特性呢?接下来,我们一起学习Collection中的常用几个 ...
- 普冉PY32系列(四) PY32F002/003/030的时钟设置
目录 普冉PY32系列(一) PY32F0系列32位Cortex M0+ MCU简介 普冉PY32系列(二) Ubuntu GCC Toolchain和VSCode开发环境 普冉PY32系列(三) P ...