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[js]获取url参数的代码
Oct 17 Javascript
javascript iframe中打开文件,并检测iframe存在否
Dec 28 Javascript
jquery.ui.progressbar 中文文档
Nov 26 Javascript
使用node.js 获取客户端信息代码分享
Nov 26 Javascript
使用coffeescript编写node.js项目的方法汇总
Aug 05 Javascript
jQuery手机拨号界面特效代码分享
Aug 27 Javascript
微信小程序 图片宽度自适应的实现
Apr 06 Javascript
Bootstrap进度条与AJAX后端数据传递结合使用实例详解
Apr 23 Javascript
解决Vue2.0中使用less给元素添加背景图片出现的问题
Sep 03 Javascript
jquery实现联想词搜索框和搜索结果分页的示例
Oct 10 jQuery
解决Vue打包后访问图片/图标不显示的问题
Jul 25 Javascript
jQuery 查找元素操作实例小结
Oct 02 jQuery
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安装为Apache DSO
2006/10/09 PHP
CI框架整合widget(页面格局)的方法
2016/05/17 PHP
php使用socket调用http和smtp协议实例小结
2019/07/26 PHP
解决FireFox下[使用event很麻烦]的问题
2006/11/26 Javascript
30个让人兴奋的视差滚动(Parallax Scrolling)效果网站
2012/03/04 Javascript
javascript里模拟sleep(两种实现方式)
2013/01/25 Javascript
javascript字符串与数组转换汇总
2015/05/26 Javascript
JS动态加载脚本并执行回调操作
2016/08/24 Javascript
Vue.js实战之使用Vuex + axios发送请求详解
2017/04/04 Javascript
javaScript中封装的各种写法示例(推荐)
2017/07/03 Javascript
jquery animate动画持续运动的实例
2017/11/29 jQuery
利用原生JavaScript实现造日历轮子实例代码
2019/05/08 Javascript
JQuery事件委托原理与用法实例分析
2019/05/13 jQuery
微信小程序实现手势滑动卡片效果
2019/08/26 Javascript
微信小程序实现录音功能
2019/11/22 Javascript
javascript 易错知识点实例小结
2020/04/25 Javascript
JavaScript常用8种数组去重代码实例
2020/09/09 Javascript
JS绘图Flot应用图形绘制异常解决方案
2020/10/16 Javascript
Python实现计算文件夹下.h和.cpp文件的总行数
2015/04/23 Python
Python编程实现双链表,栈,队列及二叉树的方法示例
2017/11/01 Python
对python的bytes类型数据split分割切片方法
2018/12/04 Python
Python3利用Dlib实现摄像头实时人脸检测和平铺显示示例
2019/02/21 Python
wxPython色环电阻计算器
2019/11/18 Python
django商品分类及商品数据建模实例详解
2020/01/03 Python
python连接mysql有哪些方法
2020/06/24 Python
美国开幕式潮店:Opening Ceremony
2018/02/10 全球购物
德国童装购物网站:NICKI´S.com
2018/04/20 全球购物
英国在线发型和美容产品商店:Beauty Cutie
2019/04/27 全球购物
COSETTE官网:奢华,每天
2020/03/22 全球购物
妇联领导班子剖析材料
2014/08/21 职场文书
居委会四风问题个人对照检查材料
2014/09/25 职场文书
幼儿园教师岗位职责
2015/04/02 职场文书
旅游项目合作意向书
2015/05/08 职场文书
董事长秘书工作总结
2015/08/14 职场文书
基于Redis实现分布式锁的方法(lua脚本版)
2021/05/12 Redis
【海涛教你打dota】体验一超神发条:咱是抢盾专业户
2022/04/01 DOTA