irpas技术客

uniapp组件-uni-transition过渡动画_李疆_uniapp 动画

网络投稿 3115

过渡动画,通常用于元素的过渡效果,例如淡隐淡出效果,遮罩层的效果、放大缩小的效果等

一、基础过渡动画

<template> <view> <uni-section title="基础过渡动画" type="line"></uni-section> <view class="example-body"> <button @click="open(['slide-top'])">slide-top</button> <button @click="open(['slide-left'])">slide-left</button> <button @click="open(['slide-right'])">slide-right</button> <button @click="open(['slide-bottom'])">slide-bottom</button> <button @click="open(['fade'])">fade</button> <button @click="open(['zoom-in', 'fade'])">zoom-in</button> <button @click="open(['zoom-out', 'fade'])">zoom-out</button> </view> <uni-transition :duration="500" :mode-class="modeClass" :styles="transfromClass" :show="transShow" @click="onTap"> <text style="color: #fff;padding: 40px;background-color: #4CD964;">Test</text> </uni-transition> </view> </template> <script> export default { components: {}, data() { return { transShow: false, modeClass: ['fade'], maskClass: { position: 'fixed', bottom: 0, top: 0, left: 0, right: 0, 'background-color': 'rgba(0, 0, 0, 0.4)' }, transfromClass: { position: 'fixed', bottom: 0, top: 0, left: 0, right: 0, display: 'flex', 'justify-content':'center', 'align-items': 'center' } }; }, onLoad() {}, methods: { open(mode) { this.modeClass = mode; this.transShow = !this.transShow; }, onTap() { this.transShow = false; } } }; </script> 二、组合过渡动画

<template> <view> <view class="example-body"> <button @click="open(['fade','zoom-out','slide-top'])">组合动画示例一</button> <button @click="open(['zoom-in','slide-bottom','fade'])">组合动画示例二</button> <button @click="open(['slide-left','slide-top','fade'])">组合动画示例三</button> </view> <uni-transition :mode-class="modeClass" :styles="transfromClass" :show="transShow" @click="onTap" :duration="500"> <text style="color: #fff;padding: 40px;background-color: #4CD964;">Test</text> </uni-transition> </view> </template> <script> export default { components: {}, data() { return { transShow: false, modeClass: ['fade'], maskClass: { 'position': 'fixed', 'bottom': 0, 'top': 0, 'left': 0, 'right': 0, 'background-color': 'rgba(0, 0, 0, 0.4)', }, transfromClass: { 'position': 'fixed', 'bottom': 0, 'top': 0, 'left': 0, 'right': 0, 'display': 'flex', 'justify-content': 'center', 'align-items': 'center' } } }, onLoad() {}, methods: { open(mode) { this.modeClass = mode this.transShow = !this.transShow }, onTap() { this.transShow = this.show = false } } } </script>

?


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,会注明原创字样,如未注明都非原创,如有侵权请联系删除!;3.作者投稿可能会经我们编辑修改或补充;4.本站不提供任何储存功能只提供收集或者投稿人的网盘链接。

标签: #uniapp #动画