1
votes

comment personnaliser la valeur du sélecteur de date natif de réaction au format 'aaaa' - 'mm' - 'jj'

J'utilise le package react-native-date-picker pour obtenir la date d'entrée. J'utilise ce code pour obtenir une valeur.

J'utilise le type Date () pour la variable de date

<DatePicker
  date={this.state.date}
  mode = {'date'}
  onDateChange={date => this.setState({date})}
/>

Je passe ceci en tant qu'objet json et choix de date par ce code

this.state = {
    date :new Date()
}

de ceci, j'obtiens une sortie comme celle-ci. Sun Dec 23 2018 16:11:00 GMT + 0530 (heure normale de l'Inde) mais je dois l'obtenir comme 2018-12-23 comment le formater comme ça.

 entrez la description de l'image ici

Comment formater la date au format 'aaaa' - 'mm' - 'jj'

p >


0 commentaires

3 Réponses :


1
votes

Date offre votre toISOString () , qui renvoie une chaîne de date au format suivant: 2011-10-05T14: 48: 00.000Z . Vous pouvez alors simplement extraire la date au format aaaa-mm-jj de la chaîne comme ceci:

const offset = date.getTimezoneOffset();
date = new Date(date.getTime() + (offset*60*1000));
date.toISOString().split('T')[0]

Mais soyez prudent, car cette méthode convertit d'abord la date en heure UTC. Cela signifie que si vous êtes dans un autre fuseau horaire, votre date peut être décalée vers un autre jour en raison du décalage horaire. Pour éviter cela, vous pouvez essayer:

date.toISOString().split('T')[0]

J'espère pouvoir vous aider!


0 commentaires

1
votes

produire une chaîne formatée à partir de l'objet Date

date = new Date()//return today

formattedDate = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate()

console.log(formattedDate)


0 commentaires

1
votes

importer le moment et ajouter les lignes suivantes

moment(date).format("YYYY MM DD")


0 commentaires