javascript - 使用 Mat datepicker 以多种颜色突出显示日期

标签 javascript angular typescript datepicker angular-material

我有两组日期,需要使用 Angular 婚姻日期选择器以橙色和红色突出显示。

例如,用户输入将是这样的,

const dateInOrange = [1,5,10,20]
const dateInRed = [10,22,27]

到目前为止,我可以突出显示橙色的日期,但没有突出显示红色。

请帮忙,下面是我的 stackblitz 链接

https://stackblitz.com/edit/angular-date-class-filter-nyxgww?file=app/datepicker-date-class-example.ts

最佳答案

您可以在这两个地方使用 this one 函数。

private _setupClassFunction() {
    this.dateClass = (d: Date) => {
      let selected = false;
      var className = "";
      selected = this._redDatesArray.some(
        (item: Date) =>
          item.getFullYear() === d.getFullYear() &&
          item.getDate() === d.getDate() &&
          item.getMonth() === d.getMonth()
      );
      className = selected ? "example-custom-date--red-class " : "";

      selected = this._orangeDatesArray.some(
        (item: Date) =>
          item.getFullYear() === d.getFullYear() &&
          item.getDate() === d.getDate() &&
          item.getMonth() === d.getMonth()
      );
      className+= selected ? "example-custom-date--orange-class " : "";
      return className;
    };

Cagri 的解决方案也是一个很棒的解决方案。

关于javascript - 使用 Mat datepicker 以多种颜色突出显示日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61141273/

相关文章:

angular - 为 Angular 应用程序设计

javascript - 什么是关于 TypeScript 的猴子补丁?

javascript - 有没有更好的方法来执行此 jQuery 功能

c# - 从代码隐藏添加文本到网页

javascript - pug - 通过每个不带逗号的数组输出

html - 当从 Angular2 中的 api 接收到数据时,在 css 类中插入 url

javascript - Angular 2 : new router and templateProvider practice from Angular 1

javascript - 在 JQuery 中选择新值时如何重新加载页面和更新选择

json - 使用 Typescript 进行持久化

javascript - 带有调用签名实例化的 typescript 类型