A responsive carousel(namely slider or swiper) component for Vue.js v2.x+. Live demo
npm install vue-l-carousel
<carousel :auto="3000" :watch-items="list">
<carousel-item v-for="(item, index) in list">
<p>CarouselItem{{index}}, URL is {{item.url}}</p>
</carousel-item>
<div slot="before">Insert node before</div>
<div slot="after">Insert node after</div>
</carousel>
import { Carousel, CarouselItem } from 'vue-l-carousel'
export default {
data() {
return {
auto: 3000,
list: [
{
url: 'url1'
},
{
url: 'url2'
},
{
url: 'url3'
},
]
}
},
components: {
'carousel': Carousel,
'carousel-item': CarouselItem
}
}
Name | Type | Default | Description |
---|---|---|---|
prev-html | String | < | HTML content of the previous button. |
next-html | String | > | HTML content of the next button. |
speed | Number | 300 | The time of the transition animation. In ms. |
loop[2] | Boolean | false | It can go to next/previous slide at the ends if it's set to true. It works only the items' length more than 1. |
rewind[2] | Boolean | false | Rewind to the other end instead of endless loop, but you can only go to the other end by previous or next button, if it's set to true. It works only loop is set to true. |
mouse-drag | Boolean | false | It can be drag by mouse if it's set to true. |
touch-drag | Boolean | true | It can be drag by touch if it's set to true. |
auto | Number | 0 | Autoplay interval. In ms. 0 for no autoplay. |
dots | Boolean | true | Pagination is available if it's set to true. |
dots-style | [Object, String, Array] | '' |
Style of v-carousel-dots |
watch-items[1][2] | Array | [] |
The original data list used to render the CarouselItems. The component will rerender if this property changes. |
Notice:
[1]: Required props
[2]: Changing it will cause render-update
event.
Name | Direction | Arguments | Description |
---|---|---|---|
changed-index | Emit |
{ index, // Current index total, // Total amount of items item, // Item data of current index } |
It emits when index changed. |
render-updated | Emit | - | It emits when render updated. |
next | Receive | - | Make carousel go to the next slide. |
prev | Receive | - | Make carousel go to the previous slide. |
to | Receive | index |
Make carousel go to the specific index of slide. |