vue中组件的过渡动画及实现代码


Posted in Javascript onNovember 21, 2018

1.  和多个元素的过渡一样,用组件来替换transition中包裹的标签

<style>
 .fade-enter,
 .fade-leave-to {
  opacity: 0
 }
 .fade-enter-active,
 .fade-leave-active {
  transition: opacity 2s
 }
 </style>
</head>

<body>
 <div id="demo">
 <button @click="show = !show">click me</button>
 <transition name="fade" mode="in-out">
  <child-one v-if="show"></child-one>
  <child-two v-else></child-two>
 </transition>
 </div>
 <script>
 Vue.component('child-one', {
  template: `<div>child-one</div>`
 })
 Vue.component('child-two', {
  template: `<div>child-two</div>`
 })
 new Vue({
  el: '#demo',
  data: {
  show: true
  },
 })
 </script>

2.  动态组件:component组件 :is 属性,来实现组件的过渡效果 

<style>
 .fade-enter,
 .fade-leave-to {
  opacity: 0
 }
 .fade-enter-active,
 .fade-leave-active {
  transition: opacity 2s
 }
 </style>
</head>

<body>
 <div id="demo">
 <button @click="handleClick">click me</button>
 <transition name="fade" mode="in-out">
  <component :is="type"></component>
 </transition>
 </div>
 <script>
 Vue.component('child-one', {
  template: `<div>child-one</div>`
 })
 Vue.component('child-two', {
  template: `<div>child-two</div>`
 })
 new Vue({
  el: '#demo',
  data: {
  type: 'child-one'
  },
  methods:{
  handleClick () {
   this.type = this.type === 'child-one' ? 'child-two' : 'child-one'
  }
  }
 })
 </script>

PS:下面看下Vue过渡动画实现

实现一个点击切换元素的隐藏和显示状态!

<div id="app">
  <transition>
    <p v-if="show">Hello World</p>
  </transition>
  <button @click="toggle">切换</button>
</div>

需要把加入动画的元素放在transition组件内,定义一个按钮的切换方法

<script>
  var app=new Vue({
    el:"#app",
    data:{
      show:true
    },
    methods:{
      toggle:function(){
        this.show=!this.show;
      }
    }

  })
</script>

给不同状态下添加相应的样式

.v-enter,.v-leave-to{
  opacity:0;
}
.v-enter-active,.v-leave-to{
  color:#00BFFF;
  transition: opacity 3s;
}

可以给transition添加一个name,如果name为"fade",则class前缀为指定的name

动画过程中类名的变化

vue中组件的过渡动画及实现代码

我们可以自定义类名,在元素属性中添加进入状态 enter-active-class,和离开状态leave-active-class

总结

以上所述是小编给大家介绍的vue中组件的过渡动画及实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
最近项目写了一些js,水平有待提高
Jan 31 Javascript
JavaScript:new 一个函数和直接调用函数的区别分析
Jul 10 Javascript
javascript中处理时间戳为日期格式的方法
Jan 02 Javascript
js操纵dom生成下拉列表框的方法
Feb 24 Javascript
Jquery实现仿腾讯娱乐频道焦点图(幻灯片)特效
Mar 06 Javascript
jQuery实现表格与ckeckbox的全选与单选功能
Nov 24 Javascript
微信开发 JS-SDK 6.0.2 经常遇到问题总结
Dec 08 Javascript
详解webpack2+React 实例demo
Sep 11 Javascript
React通过redux-persist持久化数据存储的方法示例
Feb 14 Javascript
vue组件三大核心概念图文详解
May 30 Javascript
JS操作json对象key、value的常用方法分析
Oct 29 Javascript
简单了解JavaScript arguement原理及作用
May 28 Javascript
详解promise.then,process.nextTick, setTimeout 以及 setImmediate的执行顺序
Nov 21 #Javascript
Nuxt.js之自动路由原理的实现方法
Nov 21 #Javascript
nuxt.js中间件实现拦截权限判断的方法
Nov 21 #Javascript
Nuxt.js SSR与权限验证的实现
Nov 21 #Javascript
详解nuxt路由鉴权(express模板)
Nov 21 #Javascript
使用vue-cli webpack 快速搭建项目的代码
Nov 21 #Javascript
Angular刷新当前页面的实现方法
Nov 21 #Javascript
You might like
PHP.MVC的模板标签系统(四)
2006/09/05 PHP
PHP生成月历代码
2007/06/14 PHP
php自动获取目录下的模板的代码
2010/08/08 PHP
php 无限级分类,超级简单的无限级分类,支持输出树状图
2014/06/29 PHP
PHP实现定时执行任务的方法
2014/10/05 PHP
php使用ZipArchive提示Fatal error: Class ZipArchive not found in的解决方法
2014/11/04 PHP
PHP采用get获取url汉字出现乱码的解决方法
2014/11/13 PHP
PHP+redis实现微博的拉模型案例详解
2019/07/10 PHP
jQuery 常见开发使用技巧总结
2009/12/26 Javascript
js 使用form表单select类实现级联菜单效果
2012/12/19 Javascript
当json键为数字时的取值方法解析
2013/11/15 Javascript
js 模式窗口(模式对话框和非模式对话框)的使用介绍
2014/07/17 Javascript
微信企业号开发之微信考勤Cookies的使用
2015/09/11 Javascript
浅谈js中test()函数在正则中的使用
2016/08/19 Javascript
Jquery删除css属性的简单方法
2016/12/04 Javascript
js实现适配不同的屏幕大小
2017/04/10 Javascript
sublime text配置node.js调试(图文教程)
2017/11/23 Javascript
webuploader实现上传图片到服务器功能
2018/08/16 Javascript
解决vue点击控制单个样式的问题
2018/09/05 Javascript
解决layer弹出层的内容页点击按钮跳转到新的页面问题
2019/09/14 Javascript
如何用JS模拟实现数组的map方法
2020/07/30 Javascript
使用python检测手机QQ在线状态的脚本代码
2013/02/10 Python
闭包在python中的应用之translate和maketrans用法详解
2014/08/27 Python
wxPython的安装图文教程(Windows)
2017/12/28 Python
python如何实现int函数的方法示例
2018/02/19 Python
python训练数据时打乱训练数据与标签的两种方法小结
2018/11/08 Python
python批量读取文件名并写入txt文件中
2020/09/05 Python
Keras搭建自编码器操作
2020/07/03 Python
Python调用高德API实现批量地址转经纬度并写入表格的功能
2021/01/12 Python
培训讲师邀请函
2014/01/10 职场文书
红色旅游心得体会
2014/09/03 职场文书
小学生纪念九一八事变演讲稿
2014/09/14 职场文书
班子成员四风问题自我剖析材料
2014/09/29 职场文书
公务员党的群众路线教育实践活动学习心得体会
2014/10/30 职场文书
百年校庆宣传标语口号
2015/12/26 职场文书
使用Postman测试需要授权的接口问题
2022/06/21 Java/Android