当前位置:   article > 正文

vue transition动画使用 集成第三方动画 animate.css使用_vue transition animate.css

vue transition animate.css

一、基本使用

1. 使用<transition></transition>标签包裹要加动画的元素

2. 标签中添加属性name,表示执行动画的名字,不加默认为v

3.标签中添加属性appear,值为布尔值true/false,表示是否在初始化时就执行动画

解析后在动画执行期间会给元素添加以下类名

name值-enter(进入的起点),name值-enter-to(进入的终点),name值-enter-active(进入过程中),

name值-leave(离开的起点),name值-leave-to(离开的终点),name值-leave-active(离开过程中)

通过使用不同的类型添加css样式实现过度

1. animation和name值-enter-active/name值-leave-active组合

  1. <template>
  2. <div>
  3. <button @click="isShow = !isShow">显示/隐藏</button>
  4. <transition name="hello" appear>
  5. <h1 v-show="isShow">你好啊!</h1>
  6. </transition>
  7. </div>
  8. </template>
  9. <script>
  10. export default {
  11. name: 'Test',
  12. data() {
  13. return {
  14. isShow: false
  15. }
  16. },
  17. }
  18. </script>
  19. <style scoped>
  20. .hello-enter-active{
  21. animation: showHide 1s;
  22. }
  23. .hello-leave-active{
  24. animation: showHide 1s reverse;
  25. }
  26. @keyframes showHide{
  27. from{
  28. transform: translateX(-100%)
  29. },
  30. to{
  31. transform: translateX(0px)
  32. }
  33. }
  34. </style>

2. 所有添加样式组合 

  1. <template>
  2. <div>
  3. <button @click="isShow = !isShow">显示/隐藏</button>
  4. <transition name="hello" appear>
  5. <h1 v-show="isShow">你好啊!</h1>
  6. </transition>
  7. </div>
  8. </template>
  9. <script>
  10. export default {
  11. name: 'Test',
  12. data() {
  13. return {
  14. isShow: false
  15. }
  16. },
  17. }
  18. </script>
  19. <style scoped>
  20. .hello-enter-active, .hello-leave-active{
  21. transition: 1s liner;
  22. }
  23. .hello-enter, .hello-leave-to{
  24. transform: translateX(-100%)
  25. }
  26. .hello-enter-to, .hello-leave{
  27. transform: translateX(0px)
  28. }
  29. </style>

二、注意事项

1. transition标签中只能有一个根标签

  1. <template>
  2. <div>
  3. <button @click="isShow = !isShow">显示/隐藏</button>
  4. <transition name="hello" appear>
  5. <div v-show="isShow">
  6. <h1 key="1">你好啊!</h1>
  7. <h1 key="2">吃了吗?</h1>
  8. </div>
  9. </transition>
  10. </div>
  11. </template>

2. 多个根标签的时候用<transition-group>标签包裹,并且每个子标签要有唯一key值 

  1. <template>
  2. <div>
  3. <button @click="isShow = !isShow">显示/隐藏</button>
  4. <transition-group name="hello" appear>
  5. <h1 v-show="!isShow">你好啊!</h1>
  6. <h1 v-show="isShow">吃了吗?</h1>
  7. </transition>
  8. </div>
  9. </template>

 三、集成第三方动画 animate.css

主页地址:Animate.css | A cross-browser library of CSS animations.

安装

npm install animate.css --save

引入

import 'animate.css' 

使用:

<transition

        appear

        name=“animate__animated animate__bounce” 

        enter-active-class="进入的动画"

        leave-active-class="离开的动画"

>

进入的动画/离开的动画在官网上找


若有需要改进的地方,欢迎小伙伴评论~

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/421259
推荐阅读
相关标签
  

闽ICP备14008679号