2016-09-21 6 views
0

Ich arbeite mit IONIC2, Angular2 und Typescript. Ich habe Arbeit ein für Datum und Uhrzeit wie folgt:Locale Zeit auf IONIC2 Datetime Picker

page.html

<ion-datetime displayFormat="DD MMMM YYYY" pickerFormat="DD MMMM YYYY" [(ngModel)]="date"></ion-datetime> 

page.ts

date: string = new Date().toISOString(); 

Das Ion-Datetime-Feld zeigt die Zeit mit einer Stunde weniger, wie kann ich Datum für Datum und Uhrzeit Picker zeigen die Zeitzone in Erwägung?

+0

Warum Sie eine Zeichenfolge an dieser Komponente zu geben? Versucht ohne das '.toISOString()'? – mxii

+0

Ja @mxii, ich habe es nur mit 'date: Date = new Date();' versucht, aber ein Fehler tritt auf: 'ORIGINAL EXCEPTION: TypeError: Eigenschaft' month 'von null kann nicht gelesen werden. Ich denke, das passiert, weil ion-datetime versucht, einen String mit einem speziellen Format (ISO) zu analysieren, nicht mit einem Date oder einem anderen String wie '.toString()', 'toUTCString()', 'toLocaleString()'. –

+0

Das 'ISOString' wird die UTC-Zeit ohne Zeitzoneninfo zurückgeben .. Ich weiß nicht, wie ich Ionic mitteilen soll, es mit der lokalen Zeitzone zu zeigen. – mxii

Antwort

3

Lesen this answer Ich löse mein Problem. Schließlich verwende ich:

moment(new Date().toISOString()).locale('es').format(); 

Dank sebaferreras

+0

Klingt gut! Froh, dass ich helfen konnte :) – sebaferreras

1

die einfachste Zeitzone in Millisekunden Versatz zu entfernen ist:

date = new Date(); 
myDate: String = new Date(this.date.getTime() - 
       this.date.getTimezoneOffset()*60000).toISOString();