1.0.3 • Published 9 months ago

vue3-carrousel v1.0.3

Weekly downloads
-
License
-
Repository
github
Last release
9 months ago

Composant Carousel Vue

Ce composant est un carousel flexible et personnalisable. Il permet de créer un slider avec des options telles que le défilement automatique, l'effet de boucle, le contrôle via les touches du clavier, et bien plus encore.

Installation

Pour utiliser ce composant, vous devez l'importer et l'enregistrer dans votre composant parent.

<script setup>
import Carousel from "path/to/Carousel.vue";
</script>

<template>
  <Carousel :slides="slides" :model-value="0" wrap-around auto-play>
    <template #slide="{ s }">
      <div>
        <h3>{{ s.title }}</h3>
        <p>{{ s.description }}</p>
      </div>
    </template>
  </Carousel>
</template>

Props

PropTypeDéfautDescription
modelValueNumber0Position par défaut du carousel.
slidesArray[]Les slides à afficher dans le carousel.
wrapAroundBooleanfalseActive ou non l'effet de boucle.
transitionDurationNumber300Durée de la transition en millisecondes.
autoPlayBooleanfalseActive ou non le défilement automatique.
autoPlayIntervalNumber5000Intervalle de temps entre chaque slide en millisecondes.
pauseAutoPlayOnHoverBooleantrueMet en pause le défilement automatique lorsque le curseur survole le carousel.
arrowKeysBooleantrueActive ou non la navigation avec les flèches.
touchDragBooleantrueActive ou non la navigation tactile.

Propriétés à venir

Les propriétés suivantes seront bientôt disponibles :

  • itemsToShow : Nombre de slides à afficher en même temps.
  • itemsToScroll : Nombre de slides à scroller à chaque transition.

Slots

Le composant propose plusieurs slots pour personnaliser l'affichage :

  • slide : Pour personnaliser l'apparence de chaque slide.
  • addons : Permet d'ajouter des éléments supplémentaires (comme des indicateurs de pagination) sous le carousel.

Méthodes

MéthodeDescription
next()Passe à la slide suivante.
prev()Passe à la slide précédente.
slideTo(index: number, transition: boolean)Passe à une slide spécifique.

Exemples d'utilisation

Exemple simple

<Carousel :slides="slides" :model-value="0">
  <template #slide="{ s }">
    <div>
      <h3>{{ s.title }}</h3>
      <p>{{ s.description }}</p>
    </div>
  </template>
</Carousel>

Avec autoplay et wrap-around

<Carousel :slides="slides" auto-play wrap-around :auto-play-interval="3000">
  <template #slide="{ s }">
    <div>
      <h3>{{ s.title }}</h3>
      <p>{{ s.description }}</p>
    </div>
  </template>
</Carousel>

Avec indicateurs de pagination personnalisés

<Carousel :slides="slides" wrap-around>
  <template #slide="{ s }">
    <div>
      <h3>{{ s.title }}</h3>
      <p>{{ s.description }}</p>
    </div>
  </template>
  <template #addons>
    <div class="pagination">
      <!-- Indicateurs de pagination -->
    </div>
  </template>
</Carousel>

Remarques

Les options itemsToShow et itemsToScroll seront bientôt disponibles pour offrir plus de flexibilité dans l'affichage et le défilement des slides.

N'hésitez pas à adapter le composant à vos besoins en personnalisant les slots ou en ajoutant des styles CSS pour une meilleure intégration dans votre application.

1.0.3

9 months ago

1.0.2

9 months ago

1.0.1

9 months ago

1.0.0

9 months ago