vue+vue-router转场动画的实例代码


Posted in Javascript onSeptember 01, 2018

Vue+WebPack+HBuilder 项目记录

项目搭建完毕了,但是由于是单页应用嵌入HBuilder的时候无法利用它的转场动画,于是找到了vue的转场动画写法,使体验与APP靠近,在此记录;

1.首先我们要监听路由然后判断其是前进还是后退,来实现不同的动画

export default {
 name: 'app',
 data () {
  return {
  transitionName: 'slide-left'
  }
 },
 watch: {
 '$route' (to, from) {
  const toDepth = to.path.split('/').length
  const fromDepth = from.path.split('/').length
  this.transitionName = toDepth < fromDepth ? 'slide-right' : 'slide-left'
 }
 }
}

2.template

<transition :name="transitionName">
 <router-view class="child-view"></router-view>
</transition>

3.css;修改css得到不同的效果。

.child-view {
 position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -moz-box-sizing: border-box;
    box-sizing: border-box;
 transition: all .6s cubic-bezier(.55,0,.1,1);
}
.slide-left-enter, .slide-right-leave-active {
 opacity: 0;
 -webkit-transform: translate(-80px, 0);
 transform: translate(-80px, 0);
}
.slide-left-leave-active, .slide-right-enter {
 opacity: 0;
 -webkit-transform: translate(100%, 0);
 transform: translate(100%, 0);
}

上面动画可作为不同级页面的转场动画,下面可作为同级页面转场动画,无需监听路由

1.template

<transition name="slide-fade">
 <router-view></router-view>
</transition>

2.css

.slide-fade-enter-active {
 transition: all .3s ease;
 -webkit-transition: all .3s ease;
 -moz-transition: all .3s ease;
 -ms-transition: all .3s ease;
 -o-transition: all .3s ease;
}
.slide-fade-leave-active {
 transition: all .5s ease;
 -webkit-transition: all .5s ease;
 -moz-transition: all .5s ease;
 -ms-transition: all .5s ease;
 -o-transition: all .5s ease;
}
.slide-fade-enter{
 transform: translateX(20px);
 -webkit-transform: translateX(20px);
 -moz-transform: translateX(20px);
 -ms-transform: translateX(20px);
 -o-transform: translateX(20px);
 opacity: 0;
}
.slide-fade-leave-active {
 opacity: 0;
}

以上这篇vue+vue-router转场动画的实例代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
为什么要在引入的css或者js文件后面加参数的详细讲解
May 03 Javascript
js原型继承的两种方法对比介绍
Mar 30 Javascript
jquery实现pager控件示例
Apr 09 Javascript
javascript常用正则表达式汇总
Jul 31 Javascript
谈谈对offsetleft兼容性的理解
Nov 11 Javascript
关于JS变量和作用域详解
Jul 28 Javascript
javascript基本数据类型及类型检测常用方法小结
Dec 14 Javascript
详解vue中computed 和 watch的异同
Jun 30 Javascript
protractor的安装与基本使用教程
Jul 07 Javascript
ES6/JavaScript使用技巧分享
Dec 14 Javascript
vue.js项目 el-input 组件 监听回车键实现搜索功能示例
Aug 25 Javascript
Antd-vue Table组件添加Click事件,实现点击某行数据教程
Nov 17 Javascript
Vue-router 切换组件页面时进入进出动画方法
Sep 01 #Javascript
vue 实现在函数中触发路由跳转的示例
Sep 01 #Javascript
jQuery实现表格隔行换色
Sep 01 #jQuery
解决vue路由后界面没有变化,但是链接有的问题
Sep 01 #Javascript
Vue 路由切换时页面内容没有重新加载的解决方法
Sep 01 #Javascript
vue项目实现表单登录页保存账号和密码到cookie功能
Aug 31 #Javascript
vue router 跳转后回到顶部的实例
Aug 31 #Javascript
You might like
xajax写的留言本
2006/11/25 PHP
php unset全局变量运用问题的深入解析
2013/06/17 PHP
php基于session实现数据库交互的类实例
2015/08/03 PHP
静态html文件执行php语句的方法(推荐)
2016/11/21 PHP
PHP简单实现二维数组的矩阵转置操作示例
2017/11/24 PHP
PHP中PDO事务处理操作示例
2018/05/02 PHP
基于php伪静态的实现方法解析
2020/07/31 PHP
用 javascript 实现的点击复制代码
2007/03/24 Javascript
jQuery 使用手册(一)
2009/09/23 Javascript
js调用后台servlet方法实例
2013/06/09 Javascript
jQuery实现自动滚动到页面顶端的方法
2015/05/22 Javascript
微信小程序 支付后台java实现实例
2017/05/09 Javascript
详解nodejs模板引擎制作
2017/06/14 NodeJs
Angular.js前台传list数组由后台spring MVC接收数组示例代码
2017/07/31 Javascript
jQuery 实现鼠标画框并对框内数据选中的实例代码
2017/08/29 jQuery
js HTML5 canvas绘制图片的方法
2017/09/08 Javascript
Nodejs Express 通过log4js写日志到Logstash(ELK)
2018/08/30 NodeJs
JS图片懒加载技术实现过程解析
2020/07/27 Javascript
Vue将props值实时传递 并可修改的操作
2020/08/09 Javascript
浅析Python的Django框架中的Memcached
2015/07/23 Python
Python中死锁的形成示例及死锁情况的防止
2016/06/14 Python
python+matplotlib绘制3D条形图实例代码
2018/01/17 Python
浅谈在JupyterNotebook下导入自己的模块的问题
2020/04/16 Python
Python如何绘制日历图和热力图
2020/08/07 Python
美国职棒大联盟官方网上商店:MLBShop.com
2017/11/12 全球购物
Calphalon美国官网:美国顶级锅具品牌
2020/02/05 全球购物
新郎新娘婚礼答谢词
2014/01/11 职场文书
青春励志演讲稿
2014/04/29 职场文书
人力资源管理专业毕业生自荐书
2014/05/25 职场文书
外贸业务员求职信
2014/06/16 职场文书
国际贸易系求职信
2014/08/09 职场文书
“六查”、“三学”、“三干”查摆问题整改措施
2014/09/27 职场文书
2014乡镇党委副书记对照检查材料思想汇报
2014/10/09 职场文书
2015年国税春训心得体会
2015/03/09 职场文书
2015年小学美术工作总结
2015/05/25 职场文书
幼儿园庆元旦主持词
2015/07/06 职场文书