You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
42 lines
754 B
42 lines
754 B
1 year ago
|
<template>
|
||
|
<su-swiper
|
||
|
:list="imgList"
|
||
|
:dotStyle="dotMap[data.indicator]"
|
||
|
imageMode="aspectFill"
|
||
|
dotCur="bg-mask-40"
|
||
|
:seizeHeight="300"
|
||
|
:autoplay="data.autoplay"
|
||
|
:interval="Number(data.interval)"
|
||
|
/>
|
||
|
</template>
|
||
|
|
||
|
<script setup>
|
||
|
import { computed } from 'vue';
|
||
|
import sheep from '@/sheep';
|
||
|
|
||
|
const dotMap = {
|
||
|
1: 'long',
|
||
|
2: 'tag',
|
||
|
};
|
||
|
const props = defineProps({
|
||
|
data: {
|
||
|
type: Object,
|
||
|
default: () => ({}),
|
||
|
},
|
||
|
styles: {
|
||
|
type: Object,
|
||
|
default: () => ({}),
|
||
|
},
|
||
|
});
|
||
|
|
||
|
const imgList = computed(() =>
|
||
|
props.data.list.map((item) => ({
|
||
|
...item,
|
||
|
src: sheep.$url.cdn(item.src),
|
||
|
poster: sheep.$url.cdn(item.poster),
|
||
|
})),
|
||
|
);
|
||
|
</script>
|
||
|
|
||
|
<style></style>
|