本文章向大家介绍如何在vue项目中使用vue-router实现一个转场动画的基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

Vue是一套用于构建用户界面的渐进式JavaScript框架,Vue与其它大型框架的区别是,使用Vue可以自底向上逐层应用,其核心库只关注视图层,方便与第三方库和项目整合,且使用Vue可以采用单文件组件和Vue生态系统支持的库开发复杂的单页应用。
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实现一个转场动画的全部内容了,希望大家多多支持创新互联成都网站设计公司!
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。