2017-10-02 2 views
0
<form> 
<p-calendar [(ngModel)]="report.incidentTime" [showTime]="true" [ngModelOptions]="{standalone: true}" [maxDate]="maxDateValue" 
           (ngModelChange)="validateTime($event)"></p-calendar> 

    <button type="button" class="btn btn-primary ripple" (click)="saveReport()" >Save</button> 

</form> 

Hier wird der primeNg-Kalender für die Anzeige des Kalenders verwendet.Unterschiedliche Zeitwerte für das gleiche Feld

saveReport() { 
     console.log("Inside save"); 
     this.validateFields(); 

     let temp = this.report; 
     console.log("Time : "+this.report.incidentTime); 
     console.log("Object : "+JSON.stringify(this.report)); 

} 

wo als unfallZeit: Datum;, ist ein Datentyp von Date.

Time: Mon Oct 02 2017 09:34:39 GMT+0400 (Arabian Standard Time) 
Object : {"incidentTime":"2017-10-02T05:34:39.000Z","reportingType":"I"} 

Hier zwei Ausgabe gibt unterschiedliche Zeit. Warum ist das ? Wie kann ich die gleiche Zeit in Object auch bekommen. statt og 4 Stunden weniger geben.

+2

es ist die gleiche Zeit, es ist nur die Tatsache, dass man in der lokalen Zeitzone ist, während die andere in GMT ist? der Zeitunterschied scheint richtig zu sein – toskv

+0

Muss ich die Zeitzone nachher hinzufügen und die aktuelle Zeit berechnen? – user630209

Antwort

0

Es ist das gleiche Datum, es ist nur, dass die P-Kalander-Komponente es von GMT + 4 in UTC konvertiert.

Sie können dieses Verhalten mit dem Attribut utc steuern.

Sie können die Dokumentation here sehen.

+0

Versuchte diese Lösung, sah bereits dieses Attribut in doc, es hat keinen Effekt. Prime ng Version 2.0.0 – user630209

+0

vielleicht liegt es an diesem Problem? https://github.com/primefaces/primeng/issues/3611 – toskv

Verwandte Themen