angular - Primeng: p-kalender standarddato fungerer ikke
Jeg trenger å sette en standarddato i datovelgeren. Jeg prøvde å bruke defaultDate-egenskapen til p-calender som vist nedenfor:
<p-calendar placeholder="mm/dd/yyyy"
name="deadline"
required
[(ngModel)]="deadline"
#deadline="ngModel"
[showIcon]="true"
showTime="showTime"
hourFormat="12"
[defaultDate]="defaultDate">
Component.ts-kode:
public defaultDate: Date = new Date();
ngOnInit() {
this.defaultDate.setDate(this.defaultDate.getDate() - 5);
}
Men koden over fungerer ikke. Vennligst hjelp.
Svar #1
//deadline: Date = new Date(0);
deadline: Date;
defaultDate: Date = new Date("January 31 1980 12:30");
ngOnInit() {
//if (this.deadline == undefined)
// this.deadline = new Date("June 30 1966 12:30");
}
I henhold til problemet skal defaultDate vise måned-år ved første åpning hvis feltet er tomt.
Egenskapen defaultDate brukes ikke til å angi en spesifikk dato og gjelder bare hvis ngModel-verdien ikke er satt. For å angi standard visningsdato, bruk ngModel i stedet for defaultDate.
Svar #2
Du må bruke ngModel for binding med din standarddato som beskrevet her: Åpne lenke
Så, i ditt tilfelle, bør noe sånt som dette fungere:
<p-calendar placeholder="mm/dd/yyyy"
name="deadline"
required
[(ngModel)]="deadline"
#deadline="ngModel"
[showIcon]="true"
showTime="showTime"
hourFormat="12"
[defaultDate]=deadline>
Vennligst se på calendar.ts-filen for mer informasjon i Primeng GitHub: https://github.com/primefaces/primeng/blob/master/src/app/components/calendar/calendar.ts
