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 相关文章推荐
js实现仿百度汽车频道选择汽车图片展示实例
May 06 Javascript
基于Jquery实现万圣节快乐特效
Nov 01 Javascript
微信公众号-获取用户信息(网页授权获取)实现步骤
Oct 21 Javascript
JavaScript mixin实现多继承的方法详解
Mar 30 Javascript
JavaScript实现简单的四则运算计算器完整实例
Apr 28 Javascript
ligerUI---ListBox(列表框可移动的实例)
Nov 28 Javascript
angular写一个列表的选择全选交互组件的示例
Jan 22 Javascript
微信小程序实时聊天WebSocket
Jul 05 Javascript
layer.open提交子页面的form和layedit文本编辑内容的方法
Sep 27 Javascript
11个Javascript小技巧帮你提升代码质量(小结)
Dec 28 Javascript
jQuery实现鼠标拖动图片功能
Mar 04 jQuery
使用 JavaScript 制作页面效果
Apr 21 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
详解php的魔术方法__get()和__set()使用介绍
2012/09/19 PHP
用 JSON 处理缓存
2007/04/27 Javascript
JQuery里选择超链接的实现代码
2011/05/22 Javascript
Javascript insertAfter() 实现函数代码
2011/10/12 Javascript
js获取url中&quot;?&quot;后面的字串方法
2014/05/15 Javascript
jQuery基于ajax实现星星评论代码
2015/08/07 Javascript
Jquery1.9.1源码分析系列(六)延时对象应用之jQuery.ready
2015/11/24 Javascript
javascript表单处理具体实现代码(表单、链接、按钮)
2016/05/07 Javascript
原生js实现放大镜特效
2017/03/08 Javascript
vue2.0 keep-alive最佳实践
2017/07/06 Javascript
Vue.js组件间的循环引用方法示例
2017/12/27 Javascript
Vue-cli项目获取本地json文件数据的实例
2018/03/07 Javascript
Vue 实时监听窗口变化 windowresize的两种方法
2018/11/06 Javascript
jquery实现Ajax请求的几种常见方式总结
2019/05/28 jQuery
简介JavaScript错误处理机制
2020/08/04 Javascript
详解Python中break语句的用法
2015/05/14 Python
Python 专题二 条件语句和循环语句的基础知识
2017/03/19 Python
Python使用os.listdir()和os.walk()获取文件路径与文件下所有目录的方法
2019/04/01 Python
如何使用Python发送HTML格式的邮件
2020/02/11 Python
selenium+python自动化78-autoit参数化与批量上传功能的实现
2021/03/04 Python
使用HTML5的File实现base64和图片的互转
2013/08/01 HTML / CSS
BONIA官方网站:国际奢侈品牌和皮革专家
2016/11/27 全球购物
C#面试题
2016/05/06 面试题
专业技术职务聘任书
2014/03/29 职场文书
股权转让协议书范本
2014/04/12 职场文书
中学生评语大全
2014/04/18 职场文书
二年级班级文化建设方案
2014/05/10 职场文书
财务会计实训报告
2014/11/05 职场文书
员工2014年度工作总结
2014/12/09 职场文书
2015年入党决心书
2015/02/05 职场文书
雷峰塔导游词
2015/02/09 职场文书
2016年先进班集体事迹材料
2016/02/26 职场文书
公司要求试用期员工提交“述职报告”,该怎么写?
2019/07/17 职场文书
nginx共享内存的机制详解
2022/03/21 Servers
MySQL的存储过程和相关函数
2022/04/26 MySQL
Pandas实现批量拆分与合并Excel的示例代码
2022/05/30 Python