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 相关文章推荐
javascript 表单验证常见正则
Sep 28 Javascript
jQuery源码分析之Event事件分析
Jun 07 Javascript
jquery 无限级联菜单案例分享
Mar 26 Javascript
Json和Jsonp理论实例代码详解
Nov 15 Javascript
深入解析JavaScript中的变量作用域
Dec 06 Javascript
JavaScript中数据结构与算法(二):队列
Jun 19 Javascript
JQUERY实现网页右下角固定位置展开关闭特效的方法
Jul 27 Javascript
vue-cli脚手架的安装教程图解
Sep 02 Javascript
配置node服务器并且链接微信公众号接口配置步骤详解
Jun 21 Javascript
微信小程序基于movable-view实现滑动删除效果
Jan 08 Javascript
微信小程序连接服务器展示MQTT数据信息的实现
Jul 14 Javascript
Vue之封装公用变量以及实现方式
Jul 31 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
再说下636单管机
2021/03/02 无线电
php进行md5加密简单实例方法
2019/09/19 PHP
详细分析PHP 命名空间(namespace)
2020/06/30 PHP
js下通过getList函数实现分页效果的代码
2010/09/17 Javascript
javascript实现可拖动变色并关闭层窗口实例
2015/05/15 Javascript
jQuery实现选中弹出窗口选择框内容后赋值给文本框的方法
2015/11/23 Javascript
javascript实现简单的全选和反选功能
2016/01/05 Javascript
JS动态插入并立即执行回调函数的方法
2016/04/21 Javascript
JavaScript cookie详解及简单实例应用
2016/12/31 Javascript
深入浅析Nodejs的Http模块
2017/06/20 NodeJs
jQuery滚动条美化插件nicescroll简单用法示例
2018/04/18 jQuery
Node.js命令行/批处理中如何更改Linux用户密码浅析
2018/07/22 Javascript
js实现下拉框二级联动
2018/12/04 Javascript
微信小程序用户授权弹窗 拒绝时引导用户重新授权实现
2019/07/29 Javascript
vue更改数组中的值实例代码详解
2020/02/07 Javascript
nodejs使用Sequelize框架操作数据库的实现
2020/10/21 NodeJs
vue中父子组件的参数传递和应用示例
2021/01/04 Vue.js
Python中使用select模块实现非阻塞的IO
2015/02/03 Python
全面解析Python的While循环语句的使用方法
2015/10/13 Python
Python绑定方法与非绑定方法详解
2017/08/18 Python
python使用正则表达式替换匹配成功的组并输出替换的次数
2017/11/22 Python
浅谈Python基础—判断和循环
2019/03/22 Python
PyQt5实现QLineEdit添加clicked信号的方法
2019/06/25 Python
python爬虫scrapy图书分类实例讲解
2020/11/23 Python
解决Pycharm 运行后没有输出的问题
2021/02/05 Python
CSS3 透明色 RGBA使用介绍
2013/08/06 HTML / CSS
雅诗兰黛香港官网:Estee Lauder香港
2017/09/26 全球购物
Internet主要有哪些网络群组成
2015/12/24 面试题
幼儿园家长会欢迎词
2014/01/09 职场文书
护理不良事件检讨书
2014/02/06 职场文书
学校门卫岗位职责范本
2014/06/30 职场文书
奉献家乡演讲稿
2014/09/13 职场文书
党的群众路线教育实践活动教师自我剖析材料
2014/10/09 职场文书
2015年税务稽查工作总结
2015/05/26 职场文书
关于应聘教师的自荐信
2016/01/28 职场文书
HTML5 语义化标签(移动端必备)
2021/08/23 HTML / CSS