2016-04-08 7 views
0

Gibt es eine Möglichkeit, die Zeitzone mit moment.js oder Moment-Timezone immer so einzustellen, dass sie 'America/New_York' widerspiegelt, unabhängig davon, woher der Benutzer auf die App zugreift?Wie stelle ich die Zeitzone unabhängig von der Browser-Zeitzone auf "America/New_York" ein? (moment.js)

Ich habe es versucht, aber die Zeitzone des Objekts spiegelt die Zeitzone des Browsers wider und gibt America/Los_Angeles zurück.

moment.tz("8/26/2013 4:55 pm", "M/D/YYYY h:mm a", "America/New_York") 
+0

Ihre Syntax ist hier völlig in Ordnung. Wenn ich es ausführe, erzeugt es ein Datum mit einem -4 Offset, der korrekt ist. Wenn Sie "die Zeitzone des Objekts" sagen, welche Eigenschaft betrachten Sie? –

+1

Überprüfen Sie die Debug-Konsole. Erhalten Sie eine Fehlermeldung "Moment Timezone hat keine Daten für America/New_York" '? Wenn ja, haben Sie die tz Daten nicht geladen. [Siehe hier] (http://stackoverflow.com/a/33263885/634824). –

Antwort

1

Wie hier erwähnt,

Moment.js docs

Sie die Zeitzone-Modul aufnehmen müssen und es wie folgt verwendet werden:

moment("8/26/2013 4:55 pm", "M/D/YYYY h:mm a").tz("America/New_York").format(); 
1

Um die Standard-Zeitzone zu ändern, verwenden moment.tz.setDefault mit eine gültige Zeitzone:

moment.tz.setDefault("America/New_York"); 

moment.js documentation

+0

würde das Erstellen eines neuen Momentobjekts anschließend unter der Standardzeitzone erstellt werden? es scheint, es ist nicht, wenn mein Computer auf die pazifische Zeitzone eingestellt ist – anm

+0

ja, neue Moment-Objekte werden mit Standard-Zeitzone erstellt, die Sie in 'moment.tz.setDefault (...'. – alexmac

Verwandte Themen