当前位置:首页 > VUE

vue使用animate实现动画

2026-02-21 04:43:50VUE

使用 Animate.css 实现 Vue 动画

在 Vue 项目中集成 Animate.css 可以快速实现丰富的 CSS 动画效果。Animate.css 提供了大量预设的动画类名,只需简单添加类名即可触发动画。

安装 Animate.css 依赖:

npm install animate.css

全局引入 Animate.css:

vue使用animate实现动画

// main.js
import 'animate.css'

基础用法:直接添加类名

在 Vue 模板中直接使用 Animate.css 的类名组合:

<template>
  <div class="animate__animated animate__bounce">弹跳动画</div>
</template>

动态控制动画

通过 Vue 的响应式数据动态控制动画:

vue使用animate实现动画

<template>
  <div 
    class="animate__animated"
    :class="{'animate__shakeX': shouldShake}"
    @click="triggerAnimation"
  >
    点击触发抖动动画
  </div>
</template>

<script>
export default {
  data() {
    return {
      shouldShake: false
    }
  },
  methods: {
    triggerAnimation() {
      this.shouldShake = true
      setTimeout(() => {
        this.shouldShake = false
      }, 1000)
    }
  }
}
</script>

结合 Transition 组件

与 Vue 的 Transition 组件配合使用实现入场/离场动画:

<template>
  <button @click="show = !show">切换</button>
  <Transition
    enter-active-class="animate__animated animate__fadeInDown"
    leave-active-class="animate__animated animate__fadeOutUp"
  >
    <div v-if="show">过渡动画内容</div>
  </Transition>
</template>

<script>
export default {
  data() {
    return {
      show: true
    }
  }
}
</script>

自定义动画时长

通过 CSS 变量覆盖默认动画时长:

/* 在全局样式或组件样式中 */
.animate__animated {
  --animate-duration: 0.5s;
}

动画事件监听

监听动画开始和结束事件:

<template>
  <div
    class="animate__animated animate__bounce"
    @animationstart="handleStart"
    @animationend="handleEnd"
  >
    带事件监听的动画
  </div>
</template>

<script>
export default {
  methods: {
    handleStart() {
      console.log('动画开始')
    },
    handleEnd() {
      console.log('动画结束')
    }
  }
}
</script>

注意事项

  • Animate.css v4+ 使用 animate__ 前缀,旧版使用 animated 前缀
  • 确保元素初始状态设置为 display: blockdisplay: inline-block
  • 重复动画需要移除再添加类名,或使用 animation-iteration-count CSS 属性
  • 移动端性能优化建议减少复杂动画使用

标签: 动画vue
分享给朋友:

相关文章

实现vue

实现vue

安装Vue.js 通过npm安装Vue.js是最常见的方式。确保已安装Node.js和npm,运行以下命令: npm install vue 或者使用CDN直接引入: <script src…

vue实现图集

vue实现图集

Vue 实现图集的方法 在 Vue 中实现图集功能可以通过多种方式完成,以下是一些常见的方法和实现步骤。 使用第三方库(如 vue-image-lightbox) 安装 vue-image-ligh…

vue实现新闻

vue实现新闻

Vue 实现新闻功能 使用 Vue 实现新闻功能通常涉及新闻列表展示、新闻详情页、分类筛选等模块。以下是实现的基本思路和代码示例。 新闻列表展示 通过 Vue 组件展示新闻列表,通常使用 v-for…

vue实现引导

vue实现引导

Vue 实现引导功能的方法 使用第三方库 推荐使用 driver.js 或 intro.js 这类专门为 Vue 设计的引导库。这些库提供了完整的 API 和样式,能够快速实现引导功能。 安装 dr…

vue筛选实现

vue筛选实现

Vue 筛选实现方法 使用计算属性实现筛选 计算属性是 Vue 中实现数据筛选的常用方式。通过定义一个计算属性,可以根据输入的条件动态过滤数据。 <template> <div…

vue 实现表单

vue 实现表单

Vue 表单实现方法 Vue.js 提供了多种方式实现表单,包括双向数据绑定、表单验证和动态表单生成。以下是常见的实现方法: 基础表单绑定 使用 v-model 指令实现表单元素与数据的双向绑定:…