Vue中的基础过渡动画原理解析

栏目: 编程语言 · 发布时间: 5年前

内容简介:在日常开发中 动画是必不可少的一部分 不仅能让元素直接的切换显得更加自然 同时也能极大的增强用户体验 因此 在Vue之中也提供了非常强大的关于动画这方面的支持 Vue不仅支持用CSS来写一些过渡效果 同时也是支持JS的 不过在这个文章中讲述的都是如何利用CSS来实现过渡动画、keyframes动画以及实现的原理1.首先最基础的一点在于 如果你想要在2.当

在日常开发中 动画是必不可少的一部分 不仅能让元素直接的切换显得更加自然 同时也能极大的增强用户体验 因此 在Vue之中也提供了非常强大的关于动画这方面的支持 Vue不仅支持用CSS来写一些过渡效果 同时也是支持JS的 不过在这个文章中讲述的都是如何利用CSS来实现过渡动画、keyframes动画以及实现的原理

过渡动画实现的原理

1.首先最基础的一点在于 如果你想要在 单元素/单个组件 之中实现过渡动画 那么 你需要在元素/组件所在的HTML标签之外包裹一层 <transition> 标签

2.当 元素/组件<transition> 标签包裹了以后 那么Vue会自动的为我们构建一个动画流程 具体的流程会在下文提到 因此先记住这句话就行啦 也就是说 如果你在 <style> 标签中添加了一些样式的话Vue会自动的在某个时间节点给元素或者组件添加、删除对应的样式

3.上面提到了当 元素/组件<transition> 标签包裹的时候Vue会自动的构建动画流程 也就是自动的在某个时间节点添加/删除对应的CSS类名 Vue其实提供了6个对应的类名 这里借助官网的一张图来罗列

Vue中的基础过渡动画原理解析

光这样看官网文字的解释可能感觉还不够清楚 所以这里我们借助一张图来帮助我们更好的理解这些CSS类名分别在什么时候被添加、移除

4 各个类名添加删除的时间 4.1

Vue中的基础过渡动画原理解析
我们假设黑色横线作为动画的整个流程 红点为动画开始的瞬间 那么 当我们用 <transition> 标签包裹了 元素/组件 的时候 Vue会在动画即将开始还没开始的时候添加两个CSS类名 分别是 v-enter/v-enter-to 当动画开始的瞬间 v-enter 被自动的移除 而 v-enter-active 这个class会一直存在于整个动画过程中 直到动画结束的时候跟 v-enter/v-enter-to

一起被自动删除

4.2

Vue中的基础过渡动画原理解析
我们同样还是假设黑色横线作为动画的整个流程 那么在这里可以看到 v-leave 会在动画还没有开始的时候被添加上去 当动画开始的瞬间 v-leave 被移除 v-leave-to 被添加 而 v-leave-active 会一直存在于整个动画过程中 直到动画结束的时候跟 v-leave/v-leave-to

一起被移除

###Coding 当有了这些理论知识以后 就可以动手写一个非常简单的demo了 假设现在有一个需求 页面上某个元素 通过按钮来控制隐藏和显示 同时这个隐藏和显示的过程中 有一个透明度由0-1的渐变过程

思路

通过 v-if 控制元素的显示 同时利用 <transition> 标签包裹元素实现透明度变化的过渡过程

1.先搭建基本页面以及通过按钮点击事件控制元素的隐藏与显示

Vue中的基础过渡动画原理解析

2.既然已知vue会在元素被 <transition> 包裹以后自动添加类名 那就在 <style> 标签里写上对应的样式效果

<style>
		.v-enter,
		.v-leave-to {
			opacity: 0;
		}
		.v-enter-active,
		.v-leave-active {
			transition: opacity 3s;
		}
	</style>
复制代码

这里需要理解的一点在于 上文已经提到 当进场动画触发的时候 v-enter 会立马被移除 因此在样式里把opacity写成0 也就是说 原本页面上没有显示但是即将要显示这个元素的时候 opacity会变为1 而 v-enter-active 全程都在监听transition:opacity的变化 如果变化了 就让效果在3秒内结束 反之退场动画也是同样的 v-leave-to 会在动画执行的时候被添加 这个时候 v-leave-active 感知到了transition:opacity的变化 会在3秒内做出对应的改变 最终代码运行结果如下

Vue中的基础过渡动画原理解析

最后的最后

杭州滨江地区有没有前端坑 技术栈是vue 之前是一名iOS开发.. 邮箱406132631@qq.com


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

数据结构与算法

数据结构与算法

许卓群、杨冬青、唐世渭、张铭 / 高等教育出版社 / 2004-1 / 29.50元

《数据结构与算法》把数据结构的原理和算法分析技术有机地结合在一起,系统地介绍了各种类型的数据结构和排序、检索的各种算法,还引入了一些比较高级的数据结构及相关的算法分析技术。.《数据结构与算法》分为基本数据结构、排序和检索、高级数据结构三部分。借助抽象数据类型,从逻辑结构的角度系统地介绍了线性表、字符串、二叉树、树和图等各种基本数据结构;从算法的角度讨论排序、检索和索引算法;从应用的角度介绍了一些复......一起来看看 《数据结构与算法》 这本书的介绍吧!

SHA 加密
SHA 加密

SHA 加密工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具