您好,我创建了一个选择,向我显示了当前年份,过去5年和未来3年。现在,我想将其设置为当前年份始终为默认年份。这应该在反应式表单中完成...您知道该怎么做吗?
我的代码:
// HTML
<form [formGroup]="sendYearsForm">
<select class="upload_slc" id="upload_slc" required title="" formControlName="year"
(change)="sendYear($event)">
<option *ngFor="let years of sendYears" [value]="years">{{years}}</option>
</select>
<div class="select_arrow"></div>
</form>
// TS
sendYearsForm: FormGroup;
currentDate: Date = new Date();
selectedYear: number;
// Year form
this.sendYearsForm = this.fb.group({
year: [null]
});
// Show the current year with -5 and +3
this.selectedYear = this.currentDate.getFullYear(); // HThe current year is transferred here. How do I integrate it into the template?
for (let i = this.currentDate.getFullYear() - 5; i <= this.currentDate.getFullYear() + 3; i++) {
this.sendYears.push(i);
}
您可以通过以下方式之一进行操作:
this.selectedYear = this.currentDate.getFullYear();
this.sendYearsForm= this.fb.group({
year: new FormControl(this.selectedYear, [])
});
或
this.sendYearsForm = this.fb.group({
year: [null]
});
this.selectedYear = this.currentDate.getFullYear();
this.sendYearsForm.get('year').setValue(this.selectedYear);