• vue中transition的使用


    Vue中的组件用于在元素或组件添加/移除时应用过渡动画。它能够包裹需要进行过渡效果的元素或组件,通过设置相应的CSS样式来实现过渡动画效果。

    <transition  
      name="过渡效果名称"  
      @before-enter="beforeEnter"  
      @enter="enter"  
      @after-enter="afterEnter"  
      @before-leave="beforeLeave"  
      @leave="leave"  
      @after-leave="afterLeave"  
    >  
      <!-- 需要应用过渡动画的元素或组件 -->  
    </transition>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    其中name属性指定了过渡效果名称,用于在CSS中定义对应的过渡效果。可以自定义一个或多个过渡效果,然后在CSS中通过该名称来定义对应的过渡动画样式。

    另外,还可以在标签上添加一些事件处理函数,用于控制过渡动画的开始和结束。这些事件处理函数包括:

    @before-enter:元素进入之前触发,用于在过渡开始前执行一些操作,通常用于延迟动画的开始时间。
    @enter:元素进入时触发,用于执行进入的过渡动画。
    @after-enter:元素进入之后触发,用于在过渡动画结束后执行一些操作。
    @before-leave:元素离开之前触发,用于在过渡开始前执行一些操作,通常用于延迟动画的开始时间。
    @leave:元素离开时触发,用于执行离开的过渡动画。
    @after-leave:元素离开之后触发,用于在过渡动画结束后执行一些操作。
    这些事件处理函数可以用来控制过渡动画的开始、结束和中间的操作。例如,可以在@before-enter事件中设置一个延迟时间,来控制进入动画的开始时间;在@leave事件中设置一个完成回调函数,来触发离开动画结束后的一些操作。

    最后,需要在CSS中定义对应的过渡效果样式。根据name属性的值来定义对应的过渡效果样式。例如,如果name属性为slide-left,则在CSS中可以定义如下的过渡效果样式:

    <template>  
      <div>  
        <button @click="show = !show">Toggle</button>  
        <transition name="slide-left">  
          <div v-if="show" class="content">  
            <p>This content will slide left when toggled.</p>  
          </div>  
        </transition>  
      </div>  
    </template>  
      
    <script>  
    export default {  
      data() {  
        return {  
          show: false  
        };  
      }  
    };  
    </script>  
      
    <style>  
    .slide-left-enter-active,  
    .slide-left-leave-active {  
      transition: transform 0.5s;  
    }  
    .slide-left-enter,  
    .slide-left-leave-to {  
      transform: translateX(100%);  
    }  
    .content {  
      margin-left: 100px; 
      height: 400px;
      background: #ccc; 
    }  
    </style>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36

    上述样式中,.slide-left-enter-active定义了进入动画的持续时间和过渡效果,.slide-left-enter和.slide-left-leave-to定义了进入和离开动画的起始状态和结束状态,这里将元素在进入时向右移动100%的距离,以实现向左滑动的视觉效果。

    v-enter-from:进入动画的起始状态。在元素插入之前添加,在元素插入完成后的下一帧移除。
    v-enter-active:进入动画的生效状态。应用于整个进入动画阶段。在元素被插入之前添加,在过渡或动画完成之后移除。这个 class 可以被用来定义进入动画的持续时间、延迟与速度曲线类型。
    v-enter-to:进入动画的结束状态。在元素插入完成后的下一帧被添加 (也就是 v-enter-from 被移除的同时),在过渡或动画完成之后移除。
    v-leave-from:离开动画的起始状态。在离开过渡效果被触发时立即添加,在一帧后被移除。
    v-leave-active:离开动画的生效状态。应用于整个离开动画阶段。在离开过渡效果被触发时立即添加,在过渡或动画完成之后移除。这个 class 可以被用来定义离开动画的持续时间、延迟与速度曲线类型。
    v-leave-to:离开动画的结束状态。在一个离开动画被触发后的下一帧被添加 (也就是 v-leave-from 被移除的同时),在过渡或动画完成之后移除。

  • 相关阅读:
    人工智能 解析解法解决多元线性回归问题
    相机与相机模型(针孔/鱼眼/全景相机)
    华为eNSP实验-三层交换机的不同网段通信(通过OSPF路由方式)
    拜托,别再用命令行配置mysql主从复制了,用URLOS界面化部署不香吗?
    【附源码】Python计算机毕业设计面向社区的购物平台系统
    Nginx--单向链表分析
    c#装饰器模式详解
    软考 系统架构设计师系列知识点之软件可靠性基础知识(2)
    Linux 环境变量
    构造+模拟,CF1148C. Crazy Diamond
  • 原文地址:https://blog.csdn.net/qq_44161722/article/details/133842854