我有個問題。我想將 adate-picker用于 Angular 表單,但我只需要選擇年和月,無需選擇日。這樣做的簡單方法是什么?另外我想知道如何將年份和月份分別提取到.ts檔案中。
uj5u.com熱心網友回復:
您可以通過以下解決方法使用Angular Material DatePicker:
HTML:
<mat-form-field>
<input #dpInput matInput [matDatepicker]="dp" placeholder="datepicker" [formControl]="date">
<mat-datepicker-toggle matSuffix [for]="dp"></mat-datepicker-toggle>
<mat-datepicker #dp (monthSelected)="monthSelected($event, dp, dpInput)" startView="multi-year"></mat-datepicker>
</mat-form-field>
ts:
@Component({
selector: 'datepicker-example',
templateUrl: 'datepicker-example.component.html',
styleUrls: ['datepicker-example.component.css'],
})
export class DatepickerFormatsExampleComponent {
date = new FormControl(moment());
monthSelected(event, dp, input) {
dp.close();
input.value = event.toISOString().split('-').join('/').substr(0, 7);
}
}
該monthSelected函式將獲取 datePicker 和輸入參考,并將提取所選資料并設定輸入值。
對于問題的另一部分,您可以使用monthSelected和yearSelected事件,但它們會傳遞整個日期。您可以做的是通過以下方式提取這些日期物件的數量:
const array = event.toISOString().split('-');
const year = array[0];
const month = array[1];
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/342739.html
