使用 Angular Material Calendar 时如何设置“startAt”日期?

one*_*ree 1 javascript typescript angular-material angular-material2 angular

我正在使用 material2 v2.0.0-beta.10 以及 Angular v4,并且在使用md-calendar组件时遇到问题。我的问题是我无法将startAt日期设置为任何内容。

我将开始日期设置为昨天,如下所示:

  this.startAt = new Date();
  this.startAt = this.startAt.setDate(this.startDate - 1);
Run Code Online (Sandbox Code Playgroud)

是一个尝试将startAt日期设置为昨天的 Plunkr 。

我错过了什么?

Veg*_*ega 6

开始日期接受以下格式:

startDate = new Date(1990, 0, 1);
Run Code Online (Sandbox Code Playgroud)

引用文档:

日历打开的月份或年份是通过首先检查当前是否选择了任何日期来确定的,如果是,它将打开包含该日期的月份或年份。否则,它将打开包含今天日期的月份或年份。可以使用 md-datepicker 的 startAt 属性覆盖此行为。在这种情况下,日历将打开包含 startAt 日期的月份或年份。

因此,如果您希望将开始日期设置为下个月,则以下代码应该可以工作:

let today = new Date();
let month = today.getMonth() + 1; //next month
let year = today.getUTCFullYear();
let day = today.getDay();

this.startAt = new Date(year, month, day);
Run Code Online (Sandbox Code Playgroud)

演示