Vue Transition实现类原生组件跳转过渡动画的示例


Posted in Javascript onAugust 19, 2017

最近学习了Vue Transition的用法,感觉这个地方知识点挺多的,而且很重要,所以,今天添加一点小笔记

官方文档:https://cn.vuejs.org/v2/guide/transitions.html

演示地址:http://www.coderlife.com (请在移动端查看,PC端查看请打开移动端调试模式)

前言

看了挺多Vue的UI框架都不带过渡动画,今天心血来潮,就把自己平时用的动效抽离出来。可直接通过脚手架init模版配合其他UI框架使用,不需要另外进行配置。

原理

模版中使用了Vue提供的封装组件 transition,配合CSS类名在 enter/leave 的六种不同的状态过渡中切换。

Vue Transition实现类原生组件跳转过渡动画的示例

对于这些在 enter/leave 过渡中切换的类名,v- 是这些类名的前缀。使用 <transition name="my-transition"> 可以重置前缀,比如 v-enter 替换为 my-transition-enter

重写跳转函数

// 根据具体的跳转类型更改跳转属性值,执行不同的动画
const nextDirection = (direction) => {
 let el = document.getElementById('app')
 if (el) el.setAttribute('transition-direction', direction)
}

router['_push'] = router['push']

// 重写路由跳转方法,设置跳转类型后跳转
router.forward = router['push'] = (target) => {
 nextDirection('forward')
 setTimeout(() => { router['_push'](target) })
}

// 重写路由返回方法,设置跳转类型后跳转到上一页
router.back = (target) => {
 nextDirection('back')
 if (target) {
 setTimeout(() => { router['_push'](target) })
 }
 history.go(-1)
}

How to use

# init template
vue init CoderLQChou/v-transition-template my-transition-app

# cd project
cd my-transition-app

# install dependencies
npm install

# serve with hot reload at localhost:8080
npm run dev

# build for production with minification
npm run build

仓库地址:https://github.com/CoderLQChou/vue-transition-template

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

Javascript 相关文章推荐
鼠标移动到一张图片时变为另一张图片
Dec 05 Javascript
用JavaScript显示随机图像或引用
Apr 21 Javascript
javascript 常用功能总结
Mar 18 Javascript
JavaScript中document对象使用详解
Jan 06 Javascript
jQueryUI中的datepicker使用方法详解
May 25 Javascript
老生常谈javascript变量的命名规范和注释
Sep 29 Javascript
JS实现微信弹出搜索框 多条件查询功能
Dec 13 Javascript
JS点击缩略图整屏居中放大图片效果
Jul 04 Javascript
Angularjs 事件指令详细整理
Jul 27 Javascript
React进阶学习之组件的解耦之道
Aug 07 Javascript
记一次webapck4 配置文件无效的解决历程
Sep 19 Javascript
微信小程序 select 下拉框组件功能
Sep 09 Javascript
JavaScript文件的同步和异步加载的实现代码
Aug 19 #Javascript
深入理解ES6学习笔记之块级作用域绑定
Aug 19 #Javascript
深入理解ES6的迭代器与生成器
Aug 19 #Javascript
Mui使用jquery并且使用点击跳转新窗口的实例
Aug 19 #jQuery
Vue自定义事件(详解)
Aug 19 #Javascript
Vue内容分发slot(全面解析)
Aug 19 #Javascript
简单的网页广告特效实例
Aug 19 #Javascript
You might like
资料注册后发信小技巧
2006/10/09 PHP
PHP 选项及相关信息函数库
2006/12/04 PHP
php的access操作类
2008/04/09 PHP
php 常用算法和时间复杂度
2013/07/01 PHP
yii添删改查实例
2015/11/16 PHP
浅析PHP开发规范
2018/02/05 PHP
PHP实现的curl批量请求操作示例
2018/06/06 PHP
调试php程序的简单步骤
2019/10/04 PHP
jQuery动态添加的元素绑定事件处理函数代码
2011/08/02 Javascript
JS验证控制输入中英文字节长度(input、textarea等)具体实例
2013/06/21 Javascript
javascript初学者常用技巧
2014/09/02 Javascript
JavaScript中对象介绍
2014/12/31 Javascript
Bootstrap每天必学之导航
2015/11/26 Javascript
JS实现物体带缓冲的间歇运动效果示例
2016/12/22 Javascript
jQuery实现弹出窗口弹出div层的实例代码
2017/01/09 Javascript
JS解决移动web开发手机输入框弹出的问题
2017/03/31 Javascript
利用Vue.js+Node.js+MongoDB实现一个博客系统(附源码)
2017/04/24 Javascript
微信小程序中使用ECharts 异步加载数据的方法
2018/06/27 Javascript
jQuery pagination分页示例详解
2018/10/23 jQuery
layui-table表复选框勾选的所有行数据获取的例子
2019/09/13 Javascript
Paypal支付不完全指北
2020/06/04 Javascript
element-ui中dialog弹窗关闭按钮失效的解决
2020/09/22 Javascript
Python post请求实现代码实例
2020/02/28 Python
python中的socket实现ftp客户端和服务器收发文件及md5加密文件
2020/04/01 Python
spyder 在控制台(console)执行python文件,debug python程序方式
2020/04/20 Python
python 数据库查询返回list或tuple实例
2020/05/15 Python
python cookie反爬处理的实现
2020/11/01 Python
Python实现Word文档转换Markdown的示例
2020/12/22 Python
Hawes & Curtis官网:英国经典品牌
2019/07/27 全球购物
汇智创新科技发展有限公司
2015/12/06 面试题
班组长工作职责
2013/12/25 职场文书
美容院经理岗位职责
2014/04/03 职场文书
2014年领班工作总结
2014/11/25 职场文书
校园开放日新闻稿
2015/07/17 职场文书
500字作文之关于爸爸
2019/11/14 职场文书
Linux中各个目录的作用与内容
2022/06/28 Servers