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 相关文章推荐
JavaScript进阶教程(第四课第一部分)
Apr 05 Javascript
10款新鲜出炉的 jQuery 插件(Ajax 插件,有幻灯片、图片画廊、菜单等)
Jun 08 Javascript
Ext JS 4官方文档之三 -- 类体系概述与实践
Dec 16 Javascript
jQuery中deferred对象使用方法详解
Jul 14 Javascript
浅谈时钟的生成(js手写简洁代码)
Aug 20 Javascript
基于Vue.js实现简单搜索框
Mar 26 Javascript
js实现微博发布小功能
Jan 12 Javascript
图解Javascript——作用域、作用域链、闭包
Mar 21 Javascript
Ionic2调用本地SQlite实例
Apr 22 Javascript
Angularjs修改密码的实例代码
May 26 Javascript
node.js利用socket.io实现多人在线匹配联机五子棋
May 31 Javascript
webpack是如何实现模块化加载的方法
Nov 06 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
4月1日重磅发布!《星际争霸II》6.0.0版本更新
2020/04/09 星际争霸
Win9x/ME下Apache+PHP安装配置
2006/10/09 PHP
PHP版国家代码、缩写查询函数代码
2011/08/14 PHP
介绍一些PHP判断变量的函数
2012/04/24 PHP
PHP把空格、换行符、中文逗号等替换成英文逗号的正则表达式
2014/05/04 PHP
PHP5全版本绕过open_basedir读文件脚本漏洞详细介绍
2015/01/20 PHP
JavaScript对象的property属性详解
2014/04/01 Javascript
jquery动态改变form属性提交表单
2014/06/03 Javascript
JavaScript实现数字数组按照倒序排列的方法
2015/04/06 Javascript
js实现touch移动触屏滑动事件
2015/04/17 Javascript
详解Bootstrap的iCheck插件checkbox和radio
2016/08/24 Javascript
详解jQuery的表单验证插件--Validation
2016/12/21 Javascript
详解Angular的数据显示优化处理
2016/12/26 Javascript
学习使用Bootstrap页面排版样式
2017/05/11 Javascript
knockoutjs模板实现树形结构列表
2017/07/31 Javascript
基于JavaScript实现飘落星星特效
2017/08/10 Javascript
JavaScript实现的反序列化json字符串操作示例
2018/07/18 Javascript
vue不操作dom实现图片轮播的示例代码
2019/12/18 Javascript
vue内置组件component--通过is属性动态渲染组件操作
2020/07/28 Javascript
python创建临时文件夹的方法
2015/07/06 Python
python实现颜色空间转换程序(Tkinter)
2015/12/31 Python
Python实现对一个函数应用多个装饰器的方法示例
2018/02/09 Python
Python实现字典(dict)的迭代操作示例
2018/06/05 Python
Python字典遍历操作实例小结
2019/03/05 Python
Python3.4解释器用法简单示例
2019/03/22 Python
python web框架中实现原生分页
2019/09/08 Python
python对象转字典的两种实现方式示例
2019/11/07 Python
django model通过字典更新数据实例
2020/04/01 Python
利用python生成照片墙的示例代码
2020/04/09 Python
使用python对excel表格处理的一些小功能
2021/01/25 Python
CSS3 rgb and rgba(透明色)的使用详解
2020/09/25 HTML / CSS
只要五步 就可以用HTML5/CSS3快速制作便签贴特效(图)
2012/06/04 HTML / CSS
意大利时尚精品店:Nugnes 1920
2020/02/10 全球购物
班主任工作经验材料
2014/02/02 职场文书
离婚协议书格式
2015/01/26 职场文书
浅谈GO中的Channel以及死锁的造成
2022/03/18 Golang