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 相关文章推荐
基于jquery的从一个页面跳转到另一个页面的指定位置的实现代码(带平滑移动的效果)
May 24 Javascript
关于javascript event flow 的一个bug详解
Sep 17 Javascript
JS判断元素是否在数组内的实现代码
Mar 30 Javascript
jQuery实现鼠标选文字发新浪微博的方法
Apr 02 Javascript
JS模拟的Map类实现方法
Jun 17 Javascript
JS中解决谷歌浏览器记住密码输入框颜色改变功能
Feb 13 Javascript
微信小程序开发之相册选择和拍照详解及实例代码
Feb 22 Javascript
完美解决linux下node.js全局模块找不到的情况
May 16 Javascript
基于Vue自定义指令实现按钮级权限控制思路详解
May 23 Javascript
JS实现统计字符串中字符出现个数及最大个数功能示例
Jun 04 Javascript
微信小程序简单的canvas裁剪图片功能详解
Jul 12 Javascript
layui--select使用以及下拉框实现键盘选择的例子
Sep 24 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
PHP+DBM的同学录程序(5)
2006/10/09 PHP
PHP 创建标签云函数代码
2010/05/26 PHP
PHP 中使用explode()函数切割字符串为数组的示例
2017/05/06 PHP
laravel通过创建自定义artisan make命令来新建类文件详解
2017/08/17 PHP
Yii 访问 Gii(脚手架)时出现 403 错误
2018/06/06 PHP
phpstudy后门rce批量利用脚本的实现
2019/12/12 PHP
jquery下操作HTML控件的实现代码
2010/01/12 Javascript
js 实现复制到粘贴板的功能代码
2010/05/13 Javascript
jquery滚动条插件jScrollPane的使用介绍
2013/11/08 Javascript
js判断字符长度以及中英文数字等
2013/12/31 Javascript
JS设置获取cookies的方法
2014/01/26 Javascript
js读取json的两种常用方法示例介绍
2014/10/19 Javascript
angularjs的一些优化小技巧
2014/12/06 Javascript
node.js中的fs.utimesSync方法使用说明
2014/12/15 Javascript
vue.js或js实现中文A-Z排序的方法
2018/03/08 Javascript
angularjs结合html5实现拖拽功能
2018/06/25 Javascript
Python读写ini文件的方法
2015/05/28 Python
Python自动化部署工具Fabric的简单上手指南
2016/04/19 Python
详解Python的Flask框架中的signals信号机制
2016/06/13 Python
python构建自定义回调函数详解
2017/06/20 Python
python之matplotlib学习绘制动态更新图实例代码
2018/01/23 Python
详谈python在windows中的文件路径问题
2018/04/28 Python
python3中函数参数的四种简单用法
2018/07/09 Python
利用Python如何实现一个小说网站雏形
2018/11/23 Python
Pyqt5 基本界面组件之inputDialog的使用
2019/06/25 Python
Python通过len函数返回对象长度
2020/10/22 Python
HTML5 visibilityState属性详细介绍和使用实例
2014/05/03 HTML / CSS
体育教师个人的自我评价
2014/02/16 职场文书
英语分层教学实施方案
2014/06/15 职场文书
党的群众路线教育实践活动领导班子对照检查材料
2014/09/25 职场文书
公务员年度考核评语
2014/12/31 职场文书
车间质检员岗位职责
2015/04/08 职场文书
看雷锋电影观后感
2015/06/10 职场文书
家庭经济困难证明
2015/06/23 职场文书
工作一年自我鉴定
2019/06/20 职场文书
Python上下文管理器Content Manager
2021/06/26 Python