Skip to content

DatePicker ​

Champ date : la date se saisit au clavier au format de la langue (« jj/mm/aaaa ») ou se choisit dans un calendrier.

Exemples d'utilisation ​

Dans un FormField ​

Valeur : vide

vue
<script setup>
import { ref } from 'vue'

const departure = ref(null)
</script>

<template>
  <SuFormField label="Date de départ" message="Saisissez jj/mm/aaaa ou ouvrez le calendrier">
    <SuDatePicker v-model="departure" :min="new Date()" />
  </SuFormField>
</template>

Valeur initiale et date maximale ​

vue
<SuDatePicker v-model="birth" :max="new Date()" />

API ​

Props ​

PropTypeDéfautDescription
modelValueDate | nullnullDate (v-model)
min / maxDate-Dates acceptées
isDateDisabled(date: Date) => boolean-Jours refusés
localestringlocale des composantsLangue du format et du calendrier
weekStartsOnnumberselon la languePremier jour de la semaine
placeholderstringformat attendu (jj/mm/aaaa)Texte indicatif
size'sm' | 'md' | 'lg''md'Taille
state'default' | 'error' | 'success' | 'warning''default'État de validation
disabled / readonly / requiredbooleanfalseÉtats du champ (readonly masque le calendrier)
namestring-Nom du champ
openLabelstring'Choisir une date'Nom du bouton du calendrier

Événements ​

ÉvénementPayloadDescription
update:modelValueDate | nullNouvelle date (validée)
changeDate | nullDate modifiée par l'utilisateur
focus / blurFocusEventFocus du champ

Méthodes exposées ​

MéthodeDescription
focus()Donne le focus au champ
open() / close()Ouvre ou ferme le calendrier

Accessibilité ​

  • Le champ texte reste la voie principale : la date est validée à la sortie du champ ou avec Entrée. Une date illisible, inexistante (31/02) ou hors bornes rend la valeur précédente.
  • Le bouton est nommé avec la date choisie (« Changer la date, 5 novembre 2026 ») et annonce une boîte de dialogue (aria-haspopup="dialog", aria-expanded).
  • Calendrier dans un role="dialog" : focus sur le jour actif à l'ouverture, Tab piégé, Échap ou appui extérieur ferme ; choisir un jour ferme et rend le focus au bouton. Alt + ↓ ouvre le calendrier depuis le champ.
  • Le mois et l'année du titre du calendrier ouvrent le choix du mois et de l'année (pratique pour une date de naissance) ; Échap y revient d'abord aux jours, puis ferme le calendrier.
  • Clavier du calendrier : voir Calendar.

Publié sous licence MIT.