路由动画效果切换白屏问题
来源:5-2 在Vue中使用 animate.css 库
李行知
2018-04-22
不管是使用animate.css的动画效果还是使用自定义的,都会有一段事件的白屏,在动画效果切换过程中。使用了mode也没有解决问题。这个问题应该怎么解决?
使用animate.css的时候
<template> <div id="app"> <transition name="fade" mode="out-in" leave-active-class="animated bounceOutRight" enter-active-class="animated bounceInLeft"> <router-view/> </transition> </div> </template>
使用自定义的css的时候,这个时候上面的class不存在
.fade-enter-active, .fade-leave-active { transition: opacity 0.5s ease; } .fade-enter, .fade-leave-active { opacity: 0; } .child-view { position: absolute; transition: all 0.5s cubic-bezier(0.55, 0, 0.1, 1); } .slide-left-enter, .slide-right-leave-active { opacity: 0; -webkit-transform: translate(30px, 0); transform: translate(30px, 0); } .slide-left-leave-active, .slide-right-enter { opacity: 0; -webkit-transform: translate(-30px, 0); transform: translate(-30px, 0); }
我观察了控制台,感觉,问题可能出现在动画间隙上面
在执行完leave动画以后隔了一下才指向了enter动画最终导致了白屏。这个问题的出现原因是这个吗?应该怎么解决呢?
写回答
2回答
-
是的,你把mode去掉就可以了,我不知道你想实现什么样的效果
122018-04-22 -
李行知
提问者
2018-04-22
以解决
<template> <div id="app"> <!-- <transition name="fade" mode="out-in" leave-active-class="animated bounceOutRight" enter-active-class="animated bounceInLeft"> <router-view/> </transition> --> <transition name="fade" > <router-view class="router-view"/> </transition> </div> </template> <script> export default { name: 'App' } </script> <style scoped lang='scss'> #app { height: 100%; width: 100%; .router-view{ position: absolute; } .fade-enter-active { animation: bounce-in .3s; } .fade-leave-active { animation: bounce-out .3s; } @keyframes bounce-in { 0% { transform: translate3d(-100%, 0, 0); } 25% { transform: translate3d(-75%, 0, 0); } 50% { transform: translate3d(-50%, 0, 0); } 75% { transform: translate3d(-25%, 0, 0); } 100% { transform: translate3d(0px, 0, 0); } } @keyframes bounce-out { 0% { transform: translate3d(0, 0, 0); } 25% { transform: translate3d(25%, 0, 0); } 50% { transform: translate3d(50%, 0, 0); } 75% { transform: translate3d(75%, 0, 0); } 100% { transform: translate3d(100%, 0, 0); } } } </style>
原因在与translate与absolute
012018-04-22
相似问题