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 相关文章推荐
jquery 页面滚动到底部自动加载插件集合
Jan 31 Javascript
angularJS中router的使用指南
Feb 09 Javascript
Angularjs 动态添加指令并绑定事件的方法
Apr 13 Javascript
js学习总结_轮播图之渐隐渐现版(实例讲解)
Jul 17 Javascript
Vue中render函数的使用方法
Jan 31 Javascript
vue数据传递--我有特殊的实现技巧
Mar 20 Javascript
echarts设置图例颜色和地图底色的方法实例
Aug 01 Javascript
解决axios发送post请求返回400状态码的问题
Aug 11 Javascript
详解在vue-cli项目下简单使用mockjs模拟数据
Oct 19 Javascript
详解puppeteer使用代理
Dec 27 Javascript
vue.js实现数据库的JSON数据输出渲染到html页面功能示例
Aug 03 Javascript
vue实现标签云效果的示例
Nov 09 Javascript
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
一个PHP的QRcode类与大家分享
2011/11/13 PHP
PHP与MongoDB简介|安全|M+PHP应用实例详解
2013/06/17 PHP
PHP错误Allowed memory size of 67108864 bytes exhausted的3种解决办法
2014/07/28 PHP
PHP+MySQL插入操作实例
2015/01/21 PHP
laravel如何开启跨域功能示例详解
2017/08/31 PHP
laravel 操作数据库常用函数的返回值方法
2019/10/11 PHP
IE Firefox 使用自定义标签的区别
2009/10/15 Javascript
如何将php数组或者对象传递给javascript
2014/03/20 Javascript
javascript记录文本框内文字个数检测文字个数变化
2014/10/14 Javascript
JavaScript中的toUTCString()方法使用详解
2015/06/12 Javascript
js焦点文字滚动效果代码分享
2015/08/25 Javascript
BootStrap glyphicons 字体图标实现方法
2016/05/01 Javascript
Vue学习笔记进阶篇之多元素及多组件过渡
2017/07/19 Javascript
Node.js自定义实现文件路由功能
2017/09/22 Javascript
微信小程序实现红包功能(后端PHP实现逻辑)
2018/07/11 Javascript
Vue插槽原理与用法详解
2019/03/05 Javascript
ES11屡试不爽的新特性,你用上了几个
2020/10/21 Javascript
[49:35]2018DOTA2亚洲邀请赛3月30日 小组赛A组 KG VS TNC
2018/03/31 DOTA
解决pandas 作图无法显示中文的问题
2018/05/24 Python
python按修改时间顺序排列文件的实例代码
2019/07/25 Python
python中的反斜杠问题深入讲解
2019/08/12 Python
在Python3 numpy中mean和average的区别详解
2019/08/24 Python
python pygame实现滚动横版射击游戏城市之战
2019/11/25 Python
CSS3制作轮播图的一种方法
2019/11/11 HTML / CSS
AmazeUI的下载配置与Helloworld的实现
2020/08/19 HTML / CSS
英国建筑用品在线:Building Supplies Online(BSO)
2018/04/30 全球购物
小学运动会广播稿200字(十二篇)
2014/01/14 职场文书
干部行政关系介绍信
2014/01/17 职场文书
食品工程专业求职信
2014/06/15 职场文书
群众路线教育实践活动总结
2014/10/30 职场文书
内勤岗位职责
2015/02/10 职场文书
纪检部部长竞选稿
2015/11/21 职场文书
Redis入门教程详解
2021/08/30 Redis
Nginx实现负载均衡的项目实践
2022/03/18 Servers
Python批量解压&压缩文件夹的示例代码
2022/04/04 Python
hive数据仓库新增字段方法
2022/06/25 数据库