角材料垫-日历多年范围视图

时间:2019-11-06 11:03:50

标签: angular angular-material

使用日历日历的多年观点有问题。由于默认的下拉年份表显示了从当年(2016,2017 .... 2030)开始的3年和20年。

Multiyear table

相反,我想看看从今天开始算起已有23年(1996,1999 ... 2021)。

如何根据我的描述设置多年期表的第一个视图?

我必须使用垫日历。

1 个答案:

答案 0 :(得分:1)

您可以在startAtstartView中设置<mat-datepicker><mat-calendar>,其中startAtdate object并且startView是'month' | '年'| '多年'。在您的情况下,startView'multi-year'

所以最终ts文件看起来像

import {Component} from '@angular/core';

@Component({
  selector: 'datepicker-start-view-example',
  templateUrl: 'datepicker-start-view-example.html',
  styleUrls: ['datepicker-start-view-example.css'],
})
export class DatepickerStartViewExample {
  startDate = new Date(1996, 0, 1);
}

HTML文件看起来像

<!-- Mat Datepicket -->
<mat-form-field>
  <input matInput [matDatepicker]="picker" placeholder="Choose a date">
  <mat-datepicker-toggle matSuffix [for]="picker"></mat-datepicker-toggle>
  <mat-datepicker #picker startView="multi-year" [startAt]="startDate"></mat-datepicker>
</mat-form-field>

<!-- Mat Calender -->
<div class="container">
    <mat-card>
      <mat-calendar startView="multi-year" [startAt]="startDate"></mat-calendar>
    </mat-card>
</div>