/
AutoplayExample.vue
60 lines (52 loc) · 1.29 KB
/
AutoplayExample.vue
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
<template>
<div class="wrapper">
<h2 id="autoplay-example-heading">Autoplay</h2>
<Splide
aria-labelledby="autoplay-example-heading"
:options="options"
:has-track="false"
>
<div style="position: relative">
<SplideTrack>
<SplideSlide v-for="slide in slides" :key="slide.alt">
<img :src="slide.src" :alt="slide.alt">
</SplideSlide>
</SplideTrack>
</div>
<div class="splide__progress">
<div class="splide__progress__bar">
</div>
</div>
<button class="splide__toggle">
<span class="splide__toggle__play">Play</span>
<span class="splide__toggle__pause">Pause</span>
</button>
</Splide>
</div>
</template>
<script lang="ts">
import { Splide, SplideSlide, SplideTrack, Options } from '@splidejs/vue-splide';
import { defineComponent } from 'vue';
import { generateSlides } from '../utils';
export default defineComponent( {
name: 'AutoplayExample',
components: {
Splide,
SplideTrack,
SplideSlide,
},
setup() {
const slides = generateSlides();
const options: Options = {
rewind : true,
gap : '1rem',
autoplay: true,
height : '15rem',
};
return {
slides,
options,
}
},
} );
</script>