动画<transition>组件

用vue自带的 <transition> 实现过渡效果

  • 利用 CSS 过渡或者动画来实现
  • 利用 JavaScript 的钩子函数来实现
基本使用
  1. 设置name属性(如:name =“xxx”),在组件过渡过程中,会有六个CSS类名进行切换
transition.jpg
  • v-enter: 定义进入过渡的开始状态。在元素被插入时生效,只应用一帧后立刻删除。
  • v-enter-active: 定义过渡的状态。在元素整个过渡过程中作用,在元素被插入时生效,在 transition/animation 完成之后移除。 可以用来定义过渡的过程时间,延迟和曲线函数。
  • v-enter-to: 2.1.8版及以上 定义进入过渡的结束状态。在元素被插入一帧后生效(于此同时 v-enter 被删除),在 transition/animation 完成之后移除。
  • v-leave: 定义离开过渡的开始状态。在离开过渡被触发时生效,在下一个帧移除。
  • v-leave-active: 定义过渡的状态。在元素整个过渡过程中作用,在离开过渡被触发后立即生效,在 transition/animation 完成之后移除。 这个类可以被用来定义过渡的过程时间,延迟和曲线函数。
  • v-leave-to: 2.1.8版及以上 定义离开过渡的结束状态。在离开过渡被触发一帧后生效(同时 v-leave 被删除),在 transition/animation 完成之后移除。

举个栗子:


栗子

html

<div id="app">
    <button @click="show = !show">点我试试</button><br>
    <transition name="fade">
        <img style="width:200px;height:160px" v-show="show" src="../assets/img/bg.jpg">
    </transition>
</div>

css

.fade-enter-active, .fade-leave-active{
    transition: all 0.5s ease
}
.fade-enter, .fade-leave-active {
    opacity: 0
}

js

new Vue({
    el:'#app4',
    data:{
        show:true
    }
})
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容