Vue之动画的实现
在Vue中,可以使用<transition>
元素包裹动画元素,并通过CSS来定义动画效果。以下是一个简单的示例:
<template>
<div id="app">
<button @click="show = !show">Toggle</button>
<transition name="fade">
<p v-if="show">Hello, Vue!</p>
</transition>
</div>
</template>
<script>
export default {
data() {
return {
show: true
}
}
}
</script>
<style>
/* 定义动画 */
.fade-enter-active, .fade-leave-active {
transition: opacity .5s;
}
.fade-enter, .fade-leave-to /* .fade-leave-active for <=2.1.8 */ {
opacity: 0;
}
</style>
在这个例子中,当按钮被点击时,show
的值会被切换,从而触发 <transition>
内部元素的进入和离开过渡。CSS 定义了两个关键帧:.fade-enter-active
和 .fade-leave-active
,指定了动画的持续时间和效果。当元素被插入或删除时,会应用相应的动画效果。
评论已关闭