diff --git a/docs/components/content/examples/CarouselExampleAutoplay.vue b/docs/components/content/examples/CarouselExampleAutoplay.vue new file mode 100644 index 00000000..e9a6bcd2 --- /dev/null +++ b/docs/components/content/examples/CarouselExampleAutoplay.vue @@ -0,0 +1,37 @@ + + + diff --git a/docs/content/2.components/carousel.md b/docs/content/2.components/carousel.md index b1269d01..bfd4ae13 100644 --- a/docs/content/2.components/carousel.md +++ b/docs/content/2.components/carousel.md @@ -100,6 +100,12 @@ The number of indicators will be automatically generated based on the number of :component-example{component="carousel-example-indicators-size"} +## Autoplay + +You can easily implement an autoplay behavior using the exposed [API](#api) through a template ref. + +:component-example{component="carousel-example-autoplay"} + ## Slots ### `default` @@ -120,7 +126,7 @@ You can customize the position of the buttons through `ui.arrows.wrapper`. ### `indicator` -With the `indicators` prop enabled, use the `#indicator` slot to set the content of the indicators. You will have access to the `active`, `index` properties and `on-click` method in the slot scope. +With the `indicators` prop enabled, use the `#indicator` slot to set the content of the indicators. You will have access to the `active`, `page` properties and `on-click` method in the slot scope. :component-example{component="carousel-example-slots-indicator"} @@ -132,6 +138,28 @@ You can customize the position of the buttons through `ui.indicators.wrapper`. :component-props +## API + +When accessing the component via a template ref, you can use the following: + +::field-group + ::field{name="page" type="number"} + The current page. + :: + ::field{name="pages" type="number"} + The total number of pages. + :: + ::field{name="select (page)"} + Go to a specific page. + :: + ::field{name="next ()"} + Go to the next page. + :: + ::field{name="prev ()"} + Go to the previous page. + :: +:: + ## Config :component-preset diff --git a/src/runtime/components/elements/Carousel.vue b/src/runtime/components/elements/Carousel.vue index 905039e5..ac951719 100644 --- a/src/runtime/components/elements/Carousel.vue +++ b/src/runtime/components/elements/Carousel.vue @@ -35,16 +35,16 @@
-