vue实现多个元素或多个组件之间动画效果


Posted in Javascript onSeptember 25, 2018

本文实例为大家分享了vue实现多个元素或多个组件之间动画的具体代码,供大家参考,具体内容如下

多个元素的过渡

<style>
.v-enter,.v-leave-to{


opacity: 0;

}

.v-enter-acitve,.v-leave-active{


opacity: opacity 1s;

}
</style>
<div id='app'>

<transition>


<div v-if='show'>hello world</div>


<div v-else>bye world</div>

</transition>

<button @click='handleClick'>切换</button>
</div>
<script>
var vm = new Vue({

el:'#app',

data:{


show:true

},

methods:{


handleClick:function(){



this.show = !this.show;


}

}
})
</script>

按照之前的写法方式,渐隐渐出的效果并没有出现该有的效果,那么为什么呢?

在if else两个元素切换的时候,会尽量的复用dom,正是vue,dom的复用,导致动画的效果不会出现,如果想要vue不去复用dom,之前也说过,怎么做呢,给两个div不同的key值就行了

<div v-if='show' key='hello'>hello world</div>
<div v-else key='bye'>bye world</div>

这样就可以有个明显的动画效果,多个元素过渡动画的效果。

transition还提供了一个mode属性,in-out是先显示再隐藏,out-in是先隐藏再显示

多个组件的过渡

<style>
.v-enter, .v-leave-to {


opacity: 0;

}

.v-enter-acitve, .v-leave-active {


transition: opacity 1s;

}
</style>
<div id='app'>

<transition mode='out-in'>


<child v-if='show'></child>


<child-one v-else></child-one>

</transition>

<button @click='handleClick'>切换</button>
</div>

<script>
Vue.component('child',{

template:'<div>child</div>'
})
Vue.component('child-one',{

template:'<div>child-one</div>'
})
var vm = new Vue({

el:'#app',

data:{


show:true

},

methods:{


handleClick:function(){



this.show = !this.show;


}

}
})
</script>

这个就是多个组件的过渡,采用的是上面的方式,替换子组件,那么我们换一种方式,用动态组件

<style>
.v-enter, .v-leave-to {


opacity: 0;

}

.v-enter-acitve, .v-leave-active {


transition: opacity 1s;

}
</style>
<div id='app'>

<transition mode='out-in'>


<component :is='type'></component>

</transition>

<button @click='handleClick'>切换</button>
</div>

<script>
Vue.component('child',{

template:'<div>child</div>'
})
Vue.component('child-one',{

template:'<div>child-one</div>'
})
var vm = new Vue({

el:'#app',

data:{


type:'child'

},

methods:{


handleClick:function(){



this.type = (this.type === 'child' ? 'child-one' : 'child')


}

}
})
</script>

这样也实现了多个组件的过渡效果。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
基于jquery.Jcrop的头像编辑器
Mar 01 Javascript
js中巧用cssText属性批量操作样式
Mar 13 Javascript
js取得url地址参数实例
Feb 22 Javascript
javascript:json数据的页面绑定示例代码
Jan 26 Javascript
json格式数据的添加,删除及排序方法
Jan 21 Javascript
requireJS使用指南
Apr 27 Javascript
JavaScript构建自己的对象示例
Nov 29 Javascript
Vue.JS入门教程之自定义指令
Dec 08 Javascript
jQuery实现可拖动进度条实例代码
Jun 21 jQuery
vue自定义全局组件(自定义插件)的用法
Jan 30 Javascript
Vue+Element实现动态生成新表单并添加验证功能
May 23 Javascript
jquery中为什么能用$操作
Jun 18 jQuery
vue 音乐App QQ音乐搜索列表最新接口跨域设置方法
Sep 25 #Javascript
Vue页面跳转动画效果的实现方法
Sep 23 #Javascript
vue解决弹出蒙层滑动穿透问题的方法
Sep 22 #Javascript
vue如何解决循环引用组件报错的问题
Sep 22 #Javascript
开发一个Parcel-vue脚手架工具(详细步骤)
Sep 22 #Javascript
angular的输入和输出的使用方法
Sep 22 #Javascript
vue构建动态表单的方法示例
Sep 22 #Javascript
You might like
Apache连接PHP后无法启动问题解决思路
2015/06/18 PHP
iis6手工创建网站后无法运行php脚本的解决方法
2017/06/08 PHP
Laravel学习教程之路由模块
2017/08/18 PHP
jquery的ajax从纯真网(cz88.net)获取IP地址对应地区名
2009/12/02 Javascript
基于jQuery的动态表格插件
2011/03/28 Javascript
30个最佳jQuery Lightbox效果插件分享
2011/04/11 Javascript
JavaScript高级程序设计阅读笔记(十六) javascript检测浏览器和操作系统-detect.js
2012/08/14 Javascript
JS+CSS实现Div弹出窗口同时背景变暗的方法
2015/03/04 Javascript
javascript实现控制的多级下拉菜单
2015/07/05 Javascript
AngularJS ng-mousedown 指令
2016/08/02 Javascript
利用jQuery对无序列表排序的简单方法
2016/10/16 Javascript
javascript 操作cookies详解及实例
2017/02/22 Javascript
ES6正则表达式的一些新功能总结
2017/05/09 Javascript
vue项目中定义全局变量、函数的几种方法
2019/11/08 Javascript
基于html+css+js实现简易计算器代码实例
2020/02/28 Javascript
JS typeof fn === 'function' &amp;&amp; fn()详解
2020/08/22 Javascript
[45:32]Liquid vs LGD 2018国际邀请赛淘汰赛BO3 第二场 8.23
2018/08/24 DOTA
python生成excel的实例代码
2017/11/08 Python
Python判断一个三位数是否为水仙花数的示例
2018/11/13 Python
Python学习笔记之函数的参数和返回值的使用
2019/11/20 Python
Python3并发写文件与Python对比
2019/11/20 Python
opencv中图像叠加/图像融合/按位操作的实现
2020/04/01 Python
amazeui时间组件的实现示例
2020/08/18 HTML / CSS
美国汽车交易网站:Edmunds
2016/08/17 全球购物
编辑硕士自荐信范文
2013/11/27 职场文书
个人自我鉴定写法
2013/11/30 职场文书
大一期末自我鉴定
2013/12/13 职场文书
出国导师推荐信
2014/01/16 职场文书
教师辞职报告范文
2014/01/20 职场文书
促销活动总结
2014/04/28 职场文书
工作疏忽、懈怠的检讨书
2014/09/11 职场文书
大学生违纪检讨书范文
2015/05/07 职场文书
盗窃案辩护词
2015/05/21 职场文书
大学生创业计划书常用模板
2019/08/07 职场文书
python编写函数注意事项总结
2021/03/29 Python
Spring-cloud Config Server的3种配置方式
2021/09/25 Java/Android