Vue过渡(动画)- transition组件

时间:2022-12-21 14:21:49

Vue过度(动画),本质走的是CSS3:transtion,animation。

控制器div显示/隐藏,代码如下:

    <div id="box">
<input type="button" value="按钮" @click="toggle">
<div id="div1" v-show="isShow"></div>
</div>
<script type="text/javascript">
var vm = new Vue({
el:'#box',
data:{
isShow:false
},
methods:{
toggle(){
this.isShow = !this.isShow;
}
}
});
</script>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

Vue过渡(动画)- transition组件 
我们已经实现了对div的显示/隐藏,但是没有过渡(动画)效果。

1.单元素/组件的过渡 
Vue提供了transition的封装组件,在下列情况中,可以给任何元素和组件添加”进入”和”离开”过渡动画。

条件渲染 (使用 v-if) 
条件展示 (使用 v-show) 
动态组件 
组件根节点

改造:

    <div id="box">
<input type="button" value="按钮" @click="toggle">
<transition name="fade">
<div id="div1" v-show="isShow" transiton="fade"></div>
</transition>
</div>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
        .fade-enter-active, .fade-leave-active { transition: opacity .5s }        .fade-enter, .fade-leave-active { opacity: 0 }
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

Vue过渡(动画)- transition组件

其他更多过渡动画方法,请看文档:http://cn.vuejs.org/v2/guide/transitions.html