v-enter:定义进入过渡的开始状态。在元素被插入之前生效,在元素被插入之后的下一帧移除。
v-enter-active:定义进入过渡生效时的状态。在整个进入过渡的阶段中应用,在元素被插入之前生效,在过渡/动画完成之后移除。这个类可以被用来定义进入过渡的过程时间,延迟和曲线函数。
v-enter-to: 2.1.8版及以上 定义进入过渡的结束状态。在元素被插入之后下一帧生效 (与此同时 v-enter 被移除),在过渡/动画完成之后移除。
v-leave: 定义离开过渡的开始状态。在离开过渡被触发时立刻生效,下一帧被移除。
v-leave-active:定义离开过渡生效时的状态。在整个离开过渡的阶段中应用,在离开过渡被触发时立刻生效,在过渡/动画完成之后移除。这个类可以被用来定义离开过渡的过程时间,延迟和曲线函数。
v-leave-to: 2.1.8版及以上 定义离开过渡的结束状态。在离开过渡被触发之后下一帧生效 (与此同时 v-leave 被删除),在过渡/动画完成之后移除。
<style>
.move-enter {
padding-left: 100px;
}
.move-enter-active {
transition: all 6s;
}
.move-enter-to {
padding-left: 0;
}
.move-leave {
padding-left: 0;
}
.move-leave-active {
transition: all 6s;
}
.move-leave-to {
padding-left: 100px;
}
</style>
<body>
<div id="app">
<transition name="move">
<div v-if="isShow">显示</div>
</transition>
<button @click="isShow = !isShow">切换</button>
</div>
<script>
var vm = new Vue({
el: '#app',
data: {
isShow: false
}
})
</script>
</body>
<transition name="move" mode="out-in" appear>
<div v-if="isShow" key="one">显示</div>
<div v-else key="two">隐藏</div>
</transition>
<button @click="isShow = !isShow">切换</button>
原文:https://www.cnblogs.com/mushitianya/p/10511896.html