From 63bf7d0c690a36ca75079d5c8230e33fa85a97f1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?0o=E5=BC=A0=E4=B8=8D=E6=AD=AAo0?= Date: Thu, 23 Jun 2022 00:39:52 +0800 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8(component):=20=E2=9C=A8(component):?= =?UTF-8?q?=20=E6=96=B0=E5=A2=9E=E8=BD=AE=E6=92=AD=E5=9B=BE=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E8=BF=87=E6=B8=A1=E5=8A=A8=E7=94=BB=EF=BC=8C=E9=BB=98?= =?UTF-8?q?=E8=AE=A4=E4=B8=BA=E6=BB=91=E5=8A=A8,=E4=BF=AE=E5=A4=8Dautoplay?= =?UTF-8?q?=E4=B8=BAfalse=E6=97=B6=E4=BB=8D=E8=87=AA=E5=8A=A8=E6=92=AD?= =?UTF-8?q?=E6=94=BE=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ISSUES CLOSED: #I50UP9 --- .../src/component/carousel/index.less | 2 + .../src/component/carousel/index.vue | 11 +++ .../src/component/carouselItem/index.vue | 84 ++++++++++++++++++- .../src/document/zh-CN/components/carousel.md | 80 ++++++++++++------ 4 files changed, 150 insertions(+), 27 deletions(-) diff --git a/package/component/src/component/carousel/index.less b/package/component/src/component/carousel/index.less index 2f801c53..9458492f 100644 --- a/package/component/src/component/carousel/index.less +++ b/package/component/src/component/carousel/index.less @@ -38,6 +38,7 @@ background-color: #f8f8f8; transition-duration: 0.3s; -webkit-transition-duration: 0.3s; + overflow: hidden; } .layui-carousel-updown > * { @@ -205,6 +206,7 @@ right: 20px; width: auto; height: auto; + transform: translateY(-50%); } .layui-carousel[lay-anim="updown"] .layui-carousel-ind ul { diff --git a/package/component/src/component/carousel/index.vue b/package/component/src/component/carousel/index.vue index d1da846c..8de43e16 100644 --- a/package/component/src/component/carousel/index.vue +++ b/package/component/src/component/carousel/index.vue @@ -53,6 +53,15 @@ const active = computed({ }, }); +const anim = computed({ + get() { + return props.anim; + }, + set() { + + }, +}); + const emit = defineEmits(["update:modelValue", "change"]); const change = function (id: any) { @@ -85,6 +94,7 @@ watch( provide("active", active); provide("slotsChange", slotsChange); +provide("anim", anim); const sub = () => { for (var i = 0; i < childrens.value.length; i++) { @@ -128,6 +138,7 @@ const autoplay = () => { watch( () => props.autoplay, () => { + if(props.autoplay) setInterval(autoplay, props.interval); }, { immediate: true } diff --git a/package/component/src/component/carouselItem/index.vue b/package/component/src/component/carouselItem/index.vue index 5f2da685..5e792ec5 100644 --- a/package/component/src/component/carouselItem/index.vue +++ b/package/component/src/component/carouselItem/index.vue @@ -5,7 +5,7 @@ export default { diff --git a/package/document/src/document/zh-CN/components/carousel.md b/package/document/src/document/zh-CN/components/carousel.md index 87521a32..faf4cf71 100644 --- a/package/document/src/document/zh-CN/components/carousel.md +++ b/package/document/src/document/zh-CN/components/carousel.md @@ -9,16 +9,16 @@ @@ -40,26 +40,56 @@ export default { ::: -::: title 不同方向 +::: title 不同方向与不同切换动画 ::: -::: demo +::: demo 通过 `anim` 属性来控制切换的放向与动画,支持 `default`左右切换(默认)、`updown`上线切换、`fade`渐隐渐显切换