2017-12-20 3 views
2

Ich habe versucht, nach diesem zu suchen, aber es ist eine ziemlich spezifische Frage. Ich habe eine React-Anwendung, in der Benutzer einen Kalender betrachten, der zwischen mehreren Zeitzonen wechseln kann. Ich benutze Moment mit seinem Timezone-Plugin, um diese Zeiten so oft wie möglich zu standardisieren.Datum in der Zeitzone anzeigen, die nicht die lokale Zeitzone des Benutzers ist

Es gibt einen Anwendungsfall mit dieser Anwendung, bei dem sich beispielsweise ein Benutzer in der US/Eastern (UTC -05: 00) -Zeitzone mit einem in den USA/Bergen eingestellten Kalender befindet (UTC -07: 00) Zeitzone.

Momentan behalte ich meine Daten in UTC, um die Verwirrung zu minimieren, aber ich werde diesen Benutzer in der Eastern-Zeitzone brauchen, um das Datum in der Mountain-Zeitzone sehen zu können. Wenn Sie zum Beispiel auf einen Kalendertermin klicken, der in Bergzeit eingestellt ist, wird um 15:00 Uhr MT angezeigt. Im Moment, wenn ich das UTC-Datum nehme, wird es in die Ortszeit des Benutzers konvertiert. Ein MT-Termin um 15:00 Uhr wird als 5:00 ET angezeigt.

// I'd like it to display 2017-12-20T15:00:00-07.00 to the end user 
moment('2017-12-20T22:00:00Z').format() // returns 2017-12-20T17:00:00-05.00 

Meine Frage ist, über den Kalender-Offset (UTC -07: 00), wie kann ich diese Zeit in MT angezeigt werden, im Gegensatz zu der Ortszeit unter Verwendung Moment und Moment Zeitzone des Benutzers? Ich habe außer dem Offset keinen Zugriff auf andere Zeitzoneninformationen. Ich habe versucht, die Moment Timezone-Dokumentation durchzugehen, aber anscheinend brauche ich einen Namen, um die Zeit in einer anderen Zeitzone als der lokalen Zeitzone des Benutzers zu erstellen.

+1

haben Sie am unteren Rand der Homepage für Moment Zeitzone geschaut? * Datumsangaben zwischen Zeitzonen umwandeln * –

+0

Ich habe, aber ich habe nur Zugriff auf die Offset-Werte (-07: 00) und nicht die Zeitzone Namen. Ich finde keinen Weg in der Moment Timezone Dokumentation, um die beiden miteinander zu verbinden. – addam

+0

Richtig, also -7: 00 ist nur ein Beispiel **? du könntest -9: 00, -10: 00 -6: 00 etc usw. haben? –

Antwort

Verwandte Themen