DatePicker

Ce challenge consistait à coder un calendrier grâce auquel on pourrait sélectionner une date et un créneau horaire.

A travers ce projet, j’ai approfondi mes connaissances des objets JavaScript Date et c’était aussi l’occasion de m’amuser avec les feuilles de styles pour rendre le résultat semblable au modèle imposé tout en améliorant la lisibilité du composant.

Affichage de la date et du créneau horaire sélectionnés

Fonctionnalités

  • Afficher le mois en cours et indiquer le jour actuel ;
  • Changer de mois à volonté ;
  • Sélectionner un jour et un créneau horaire ;
  • Afficher la date et le créneau sélectionné uniquement si ces deux données sont présentes ;

Fonctionnalités accessoires

  • Afficher la date en toute lettre ;
  • Afficher l’heure actuelle à la seconde prêt ;
Aperçu des effets visuels au survol des jours du mois affiché et ceux des mois adjacent, ainsi que la mise en valeur de la date actuelle

Difficultés

  • La principale difficulté était de choisir quelle structure adopter pour l’affichage du calendrier.

J’ai choisi d’utiliser un tableau pour lister et manipuler les jours du mois à afficher. Puis quatre ou cinq autres tableaux d’entiers, un pour chaque semaine, dans lesquels les jours du mois sont progressivement poussés. Il ne restait plus qu’à mapper ces tableaux pour remplir les cellules d’une table de 7 colonnes et 4 ou 5 lignes.

Utilisation des flèches pour changer de mois sans limitation

Skills tech

  • Coder l’interface uniquement en CSS ;
  • Utiliser les objets JavaScript Date de différentes manières ;
  • Faire circuler les données au sein du composant avec Redux ;
Sélection de n’importe quel jour affiché et actualisation de la date sélectionnée