J'utilise React Datepicker et tout fonctionne très bien.
Au lieu d'avoir "Su" "Mo" "Tu" etc. pour les jours de la semaine, j'aimerais utiliser quelque chose comme ceci:
const Calendar = ({dateFormat, startDate}) => ( <div className="my-calendar"> <DatePicker inline dateFormat={ dateFormat } selected={ startDate } /> </div> ); export default Calendar;
J'accomplis cela via css:
const ReservationCalendar = ({dateFormat, startDate}) => ( <Calendar dateFormat={ dateFormat } startDate={ startDate }/> ); export default ReservationCalendar;
Cela semble fonctionner, mais semble aussi assez "hacky". Y a-t-il une option de configuration qui me manque quelque part et que je peux spécifier le ou les formats que je souhaite utiliser?
Merci pour vos suggestions!
ÉDITER
Voici comment j'essaie de transmettre le dateFormat
à mon composant:
App.js
this.state = { startDate: new Date(), dateFormat: 'ddd' }; ... render() { ... <ReservationCalendar dateFormat={ this.state.dateFormat } startDate={ this.state.startDate } /> }
ReservationCalendar.js
.react-datepicker__day-name { ... &:first-child { &:after { visibility: visible; position: relative; left: -0.5rem; text-align: center; content: "Sun"; } } }
DatePicker.js
"Sun" "Mon" "Tue"
Avec tout comme ça, j'obtiens toujours une vue comme je l'ai attachée. Peut-être que je ne passe pas quelque chose correctement. Merci encore pour votre temps!
4 Réponses :
Vous pouvez utiliser un accessoire appelé dateFormat
pour formater la date en fonction de la sortie souhaitée. Pour obtenir les jours comme Sun Mon Tue
, transmettez dateFormat="ddd"
comme accessoire au composant. Comme de cette façon
<DatePicker dateFormat="ddd" onChange={this.handleChange} />
Merci pour votre suggestion. J'ai mis à jour ma question pour montrer comment je transmets les propriétés. J'ai essayé d'ajouter dateFormat
mais pas de chance. Peut-être que je ne le passe pas correctement?
Vous pouvez utiliser l'attribut useWeekdaysShort de react-datepicker.
par exemple:
<DatePicker> useWeekdaysShort={true} </DatePicker>
Utilisation:
dateFormat={"EEEE"}
Ou:
dateFormat={"EEE"}