vue内置组件transition简单原理图文详解(小结)


Posted in Javascript onJuly 12, 2018

基本概念

Vue 在插入、更新或者移除 DOM 时,提供多种不同方式的应用过渡效果

  • 在 CSS 过渡和动画中自动应用 class
  • 可以配合使用第三方 CSS 动画库,如 Animate.css
  • 在过渡钩子函数中使用 JavaScript 直接操作 DOM
  • 可以配合使用第三方 JavaScript 动画库,如 Velocity.js

简单用法

  • v-if/v-show 控制显示隐藏,使用transition 组件控制其变化过程
  • 一个页面子组件 router-view 的消失隐藏,使用transition 组件控制其变化过程
<template>
// 子组件
	<transition name="fade1">
 	<router-view></router-view>
	</transition>
// if/show控制
	<transition name="fade2">
 	<div v-show="isTage"></div>
	</transition>
</template>

类名介绍

  1. v-enter :定义进入过渡的开始状态。在元素被插入之前生效,在元素被插入之后的下一帧移除。
  2. v-enter-active :定义进入过渡生效时的状态。在整个进入过渡的阶段中应用,在元素被插入之前生效,在过渡/动画完成之后移除。这个类可以被用来定义进入过渡的过程时间,延迟和曲线函数。
  3. v-enter-to : 2.1.8版及以上 定义进入过渡的结束状态。在元素被插入之后下一帧生效 (与此同时 v-enter 被移除),在过渡/动画完成之后移除。
  4. v-leave : 定义离开过渡的开始状态。在离开过渡被触发时立刻生效,下一帧被移除。
  5. v-leave-active :定义离开过渡生效时的状态。在整个离开过渡的阶段中应用,在离开过渡被触发时立刻生效,在过渡/动画完成之后移除。这个类可以被用来定义离开过渡的过程时间,延迟和曲线函数。
  6. v-leave-to : 2.1.8版及以上 定义离开过渡的结束状态。在离开过渡被触发之后下一帧生效 (与此同时 v-leave 被删除),在过渡/动画完成之后移除。

以上为vuejs官网介绍 下面我平时记载的笔记,结合图文,更容易理解些

变化原理

vue内置组件transition简单原理图文详解(小结) 

vue内置组件transition简单原理图文详解(小结) 

动画流程出现:

开始前一帧: 点击出现动画,元素由none变为block,动画开始前一帧,插入 opacity:0 属性 “1” ,和监听opacity属性变化时间为3s “2”

动画第二帧: opacity:0 ,属性 “1” 去除,引起**“2”**监听执行时间变化

动画最后一帧: 动画结束,去除所有

vue内置组件transition简单原理图文详解(小结)

 动画流程消失:

开始前一帧: 点击消失动画,元素由block变为none,动画开始前一帧,只插入监听opacity属性变化时间为3s “4”

动画第二帧: 插入, “3” 属性opacity:0引起 “2” 监听执行事件变化

动画最后一帧: 动画结束,去除所有

平时功能加个过渡动画看着两个图足够了

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
firefox下对ajax的onreadystatechange的支持情况分析
Dec 14 Javascript
JQuery循环滚动图片代码
Dec 08 Javascript
js拆分字符串并将分割的数据放到数组中的方法
May 06 Javascript
jQuery.prop() 使用详解
Jul 19 Javascript
jquery简单实现幻灯片的方法
Aug 03 Javascript
JS实现部分HTML固定页面顶部随屏滚动效果
Dec 24 Javascript
js 函数式编程学习笔记
Mar 25 Javascript
详解Node.js项目APM监控之New Relic
May 12 Javascript
angular5 httpclient的示例实战
Mar 12 Javascript
解决vue 项目引入字体图标报错、不显示等问题
Sep 01 Javascript
antd 表格列宽自适应方法以及错误处理操作
Oct 27 Javascript
解决vue使用vant轮播组件swipe + flex时文字抖动问题
Jan 07 Vue.js
vue-resource请求实现http登录拦截或者路由拦截的方法
Jul 11 #Javascript
vue.js实现的经典计算器/科学计算器功能示例
Jul 11 #Javascript
Vue.js实现的计算器功能完整示例
Jul 11 #Javascript
JavaScript类的继承方法小结【组合继承分析】
Jul 11 #Javascript
React中嵌套组件与被嵌套组件的通信过程
Jul 11 #Javascript
JSON数据中存在单个转义字符“\”的处理方法
Jul 11 #Javascript
JS实现动态生成html table表格的方法分析
Jul 11 #Javascript
You might like
连接到txt文本的超链接,不直接打开而是点击后下载的处理方法
2009/07/01 PHP
php 获取远程网页内容的函数
2009/09/08 PHP
PHP动态创建Web站点的方法
2011/08/14 PHP
php利用新浪接口查询ip获取地理位置示例
2014/01/20 PHP
使用WordPress发送电子邮件的相关PHP函数用法解析
2015/12/15 PHP
YII2框架中behavior行为的理解与使用方法示例
2020/03/13 PHP
JavaScript Timer实现代码
2010/02/17 Javascript
jQuery实现的左右移动焦点图效果
2016/01/14 Javascript
浅谈JavaScript的全局变量与局部变量
2016/06/10 Javascript
JavaScript中访问id对象 属性的方式访问属性(实例代码)
2016/10/28 Javascript
JavaScript编程设计模式之观察者模式(Observer Pattern)实例详解
2017/10/25 Javascript
vue组件jsx语法的具体使用
2018/05/21 Javascript
vue请求本地自己编写的json文件的方法
2019/04/25 Javascript
jQuery内容选择器与表单选择器实例分析
2019/06/28 jQuery
判断“命令按钮”是否被鼠标单击详解
2019/07/31 Javascript
vue props default Array或是Object的正确写法说明
2020/07/30 Javascript
[02:38]2018年度DOTA2最佳劣单位选手-完美盛典
2018/12/17 DOTA
Python中下划线的使用方法
2015/03/27 Python
python实现隐马尔科夫模型HMM
2018/03/25 Python
对python list 遍历删除的正确方法详解
2018/06/29 Python
对python 多个分隔符split 的实例详解
2018/12/20 Python
python爬虫selenium和phantomJs使用方法解析
2019/08/08 Python
python系统指定文件的查找只输出目录下所有文件及文件夹
2020/01/19 Python
python GUI库图形界面开发之PyQt5多线程中信号与槽的详细使用方法与实例
2020/03/08 Python
Python列表去重复项的N种方法(实例代码)
2020/05/12 Python
Django生成数据库及添加用户报错解决方案
2020/10/09 Python
AutoShack.com加拿大:北美主要的汽车零部件零售商
2019/07/24 全球购物
请用Java实现列出某个目录下的所有文件
2013/09/23 面试题
小学英语教学反思
2014/01/30 职场文书
聊城大学毕业生自荐书
2014/02/01 职场文书
《美丽的田园》教学反思
2014/03/01 职场文书
汉语言文学毕业生自荐信范文
2014/03/24 职场文书
大三学年自我鉴定范文(3篇)
2014/09/28 职场文书
2015年全国保险公众宣传日活动方案
2015/05/06 职场文书
mysql字段为NULL索引是否会失效实例详解
2022/05/30 MySQL
CSS浮动引起的高度塌陷问题
2022/08/05 HTML / CSS