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

2022-01-11,,,,

今天小编就为大家分享一篇vue+vue-router转场动画实例代码,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

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

  

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

  

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转场动画的实例代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持本站。

以上就是vue+vue-router转场动画的实例代码的详细内容,更多请关注本站其它相关文章!

《vue+vue-router转场动画的实例代码.doc》

下载本文的Word格式文档,以方便收藏与打印。