web-dev-qa-db-fra.com

Moment Js UTC à heure locale

J'essaie de convertir l'heure UTC en heure locale. J'ai suivi cet exemple à partir de ce lien: http://jsfiddle.net/FLhpq/4/light/ . Je n'arrive pas à obtenir le bon résultat local. Par exemple, s'il est 10 h 30 ici, au lieu de 10 h 30, obtenez 15: 30. Voici mon code:

var date = moment.utc().format('YYYY-MM-DD HH:mm:ss');

var localTime  = moment.utc(date).toDate();

localTime = moment(localTime).format('YYYY-MM-DD HH:mm:ss');

console.log("moment: " + localTime);

Peu importe ce que je fais, l'heure vient toujours à l'heure UTC. J'habite à Houston alors je sais que le fuseau horaire est la question. J'ai suivi le code dans le lien mais il peut sembler que l'heure locale soit indiquée. Qu'est-ce que je fais mal?

95
brian Scroggins

Pour convertir l'heure UTC en heure locale, vous devez utiliser moment.local().

Pour plus d'informations, voir docs

Exemple:

var date = moment.utc().format('YYYY-MM-DD HH:mm:ss');

console.log(date); // 2015-09-13 03:39:27

var stillUtc = moment.utc(date).toDate();
var local = moment(stillUtc).local().format('YYYY-MM-DD HH:mm:ss');

console.log(local); // 2015-09-13 09:39:27

Démo:

var date = moment.utc().format();
console.log(date, "- now in UTC"); 

var local = moment.utc(date).local().format();
console.log(local, "- UTC now to local"); 
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js"></script>
174
axon

Essaye ça:

let utcTime = "2017-02-02 08:00:13";

var local_date= moment.utc(utcTime ).local().format('YYYY-MM-DD HH:mm:ss');
41
JAMZAD
let utcTime = "2017-02-02 08:00:13.567";
var offset = moment().utcOffset();
var localText = moment.utc(utcTime).utcOffset(offset).format("L LT");

Essayez ceci JsFiddle

13
Abdur Rahim

Remarque: veuillez mettre à jour le format de date en conséquence.

Format Date

   __formatDate: function(myDate){
      var ts = moment.utc(myDate);
      return ts.local().format('D-MMM-Y');
   }

Format heure

  __formatTime: function(myDate){
      var ts = moment.utc(myDate);
      return ts.local().format('HH:mm');
  },
2
Fung LAM