Beschreibung des Problems und Schritte zur Reproduktion:
Moment gibt die Zeit zurück, die einige Minuten nach der Zeit liegt, die mein Computer anzeigt.
So stelle ich die Zeit ein: var publishdate = moment().format('YYYY-MM-DD HH:MM');
Hier ist ein Video davon:
https://youtu.be/2ctTNhqYR0A
Im Video können Sie sehen, dass ich Bootstrap Datetimepicker verwende, der selbst momentjs verwendet. Wenn ich das Veröffentlichungsdatum initialisiere, sind es einige Minuten nach dem, was auf meinem Computer ist.
Warum gibt mir momentjs zunächst die falsche Uhrzeit und der Datepicker die richtige an?
Bitte geben Sie die Werte aller verwendeten Variablen an.
Umfeld:
Win 10 Chrome neueste Version
Wenn Sie ein Problem melden, führen Sie den folgenden Code in der von Ihnen verwendeten Umgebung aus und fügen Sie die Ausgabe ein:
console.log(moment().format('YYYY-MM-DD HH:MM'))
console.log( (new Date()).toString())
console.log((new Date()).toLocaleString())
console.log( (new Date()).getTimezoneOffset())
console.log( navigator.userAgent)
console.log(moment.version)
Ausgang
2017-03-25 12:03
create: Sat Mar 25 2017 12:37:19 GMT+0100 (Romance Standard Time)
create: 3/25/2017, 12:37:19 PM
create: -60
create: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36
create: 2.18.1
Möglicherweise handelt es sich um einen Bootstrap Datepicker-Fehler. Welchen Datepicker verwendest du? Haben sie ein Github-Repository?
Ich bezweifle, dass es seit dieser Zeile mit datetimepicker zu tun hat:
console.log(moment().format('YYYY-MM-DD HH:MM')) gibt
2017-03-25 12:03
und die Zeit auf dem Computer 12:37 oder etwas in der Nähe war, gibt die Datums-/Uhrzeitauswahl die richtige Zeit an, wenn sie die Zeit in das Eingabefeld einfügt.
sowieso verwende ich:
var publishdate = moment().format('YYYY-MM-DD HH:MM');
Das zweite MM
sollte mm
da MM Monat und mm Minute bedeutet.
Hilfreichster Kommentar
Das zweite
MM
solltemm
da MM Monat und mm Minute bedeutet.