本文将介绍使用 Vue.js 的 Transition 组件实现一个从下方弹出的消息提示框,并添加自定义动画效果,提升用户体验。

首先,定义一个名为 'down' 的动画,该动画包括 'enter' 和 'leave' 两个状态,分别对应消息提示框的出现和消失动画效果:

.down {
  &-enter {
    &-from {
      position: fixed;
      left: 50%;
      transform: translate3d(-50%, -75px, 0);
      opacity: 0;
    }
    &-active {
      transition: all 1s;
    }
    &-to {
      opacity: 1;
    }
  }
  &-leave {
    &-from {
      position: fixed;
      left: 50%;
      transform: translate(-50%,75px);
      opacity: 1;
    }
    &-active {
      transition: all 1s;
    }
    &-to {
      opacity: 0;
    }
  }
}

然后,使用 Transition 组件包裹需要进行动画的元素,并设置 name 属性为 'down',表示使用定义好的动画:

<template>
  <Transition name='down' @after-leave='onAfterLeave'>
    <div
      class='message-box'
      ref='messageRef'
      :class='`message-${type}`'
      :style='cssstyle'
      v-show='visible'
    >
      <icons :name=''success'' class='message_icon'></icons>
      <div class='message__content'>
        <span>{{ message }}</span>
      </div>
      <icons
        name='guanbi'
        @click='visible = false'
        v-if='showClose'
        class='message_CloseBtn'
      ></icons>
    </div>
  </Transition>
</template>

代码中使用了 v-show 指令控制消息提示框的显示与隐藏,并通过 :class 和 :style 绑定动态样式。该代码使用了 Vue.js 的 Transition 组件实现了一个从下方弹出的消息提示框,并添加了自定义动画效果,提升了用户体验。

注意:该代码示例使用了自定义的 'icons' 组件,需要根据实际情况进行调整。

Vue.js 动画:从下方弹出的消息提示框

原文地址: https://www.cveoy.top/t/topic/bKgJ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录