Vue.js动画

组件的过渡

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

链接地址下载:

<script src="http://raw.githubusercontent.com/daneden/animate.css/master/animate.css"></script>
 

css过渡

下面是一个运用css点击显示隐藏显示的2s动画效果:

    <style>
        /* 离开进行中和开始进行中,设置了一个透明度的变化*/
        .fade-enter-active,.fade-leave-active{
          transition: opacity 2s;
        }
        /* 开始和结束前的时候,透明度为0,相当于把它给隐藏掉*/
        .fade-enter,.fade-leave-to{
          opacity: 0;
        }
    </style>
    
    <body>
      <div id="main">
        <button v-on:click="ok = !ok">点击</button>
        <transition name="fade">
          <p v-if="ok">vue动画课程</p>
        </transition>
      </div>
    </body>
    
    <script>
      var vm = new vue({
        el: '#main',
        data: {
          ok: true
        }
      });
    </script>

 

过渡理解

当使用/删除包含在transition组件中的元素时,Vue将会做的处理:

  • 首先会先嗅探一下这个目标元素是否使用CSS过渡或动画,在使用的时候添加或者删除CSS类名。
  • 如果没有检测到这个CSS过渡或动画,DOM操作(插入或删除)会直接执行下一帧,而不会在这一帧继续执行。

资源搜索网站大全 https://www.renrenfan.com.cn 广州VI设计公司https://www.houdianzi.com

过渡动画CSS的类名

  • v-enter,定义进入过渡的开始状态
  • v-enter-active,定义过渡的状态,在元素的整个过渡过程中作用,在元素被插入时生效,在transition/animation完成之后移除。这个类可以被用来定义过渡的过程时间,延迟和曲线函数。
  • v-enter-to,定义进入过渡的结束状态,在元素被插入一帧后生效(与此同时v-enter被删除),在transition/animation完成之后移除。
  • v-leave,定义离开过渡的开始状态,在离开过渡被触发时生效,在下一个帧移除。
  • v-leave-active,定义过渡的状态,在元素整个过渡过程中作用,在离开过渡被触发后立即生效,在transition/animation完成之后移除,这个类可以被用来定义过渡的过程时间,延迟和曲线函数。
  • v-leave-to,定义离开过渡前的结束状态,在离开过渡被触发一帧后生效(与此同时v-leave被删除),在transition/animation完成之后移除。
posted @ 2020-12-06 13:21  笑人  阅读(132)  评论(0编辑  收藏  举报