angular - 在垫日历中突出显示日期

标签 angular typescript calendar angular-material angular5

我正在使用 Angular Material 日历(即)ma​​t-calendar。我试图突出显示日历中的一些日期。但我看不到任何相关文件。谁能帮我解决这个问题。

HTML

<mat-card>
<mat-calendar name="appoinment_date" [selected]="selectedDate (selectedChange)="onSelect($event)"></mat-calendar>
</mat-card>

TS

  onSelect(event){
    this.selectedDate= event;
  }

What I am Getting//只能选择日期 My output

我想要的是//应该能够高亮日期

enter image description here

最佳答案

2019 年了。对于仍在寻找答案的任何人

<mat-calendar  [dateClass]="dateClass()" 
(selectedChange)="getDayRequestsList($event)"> </mat-calendar>


dateClass() {    
return (date: Date): MatCalendarCellCssClasses => {
  const highlightDate = this.datesToMark // array of dates
    .map(strDate => new Date(strDate)) // wrap with new Date if not in 
    date object
    .some(d => d.getDate() === date.getDate() && d.getMonth() === 
    date.getMonth() && d.getFullYear() === date.getFullYear());
  console.log(highlightDate);

  const highlightCurrentDate = this.upcomingCalendarEvents
  .map(strDate => new Date(+strDate.date))
  .some(d => d.getDate() === date.getDate() && currentDate.getDate() === 
    d.getDate() && d.getMonth() === date.getMonth() && d.getFullYear() === 
date.getFullYear());
console.log(highlightDate);
  if(highlightCurrentDate) {
    return 'highlight-current-date-class'
  } else if(highlightDate) {
    return 'highlight-date-class'
  } else {
    return ''
  }


};

}

关于angular - 在垫日历中突出显示日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52510875/

相关文章:

javascript - 如何将 Material 选择和标签并排放在同一行

angular - TS2304 : Cannot find name 'describe' in Webpack/Angular 2

jquery - 完整日历以明智的方式显示所有员工的约会列

java - 日历 setter 不接受我的更改

java - .ics 文件中使用的时间格式?

angular - 如何在 Angular2 应用程序中直观地突出显示/捕获不必要的 DOM 更改

angular - 在 webpack 中使用 ExtractTextPlugin 忽略 Angular2 组件样式表

angular - 如何知道是否单击了垫分页器的下一个或上一个按钮

带有 angular2-highcharts 的 JSON 数据

javascript - 有没有办法检查源是否被订阅?