如何检查Firebase中的日期是否等于今天

时间:2019-09-12 15:08:23

标签: html typescript firebase date ionic-framework

我有一个离子卡,其中显示了从Firebase读取的信息。 1条这样的信息是一个日期。 如果日期等于今天,那么我要进行一些样式设置。

在我的html ion-card-content标签中,我有以下代码

<ion-card-content [ngClass]="isMatchDateToday(match?.date.seconds * 1000)">

我想调用一个将日期作为参数传递并比较其今天日期的函数。

   isMatchDateToday(date: Date){



    }

我真的不确定如何比较日期。我用过    今天= date.now(),并尝试将其与我的日期进行比较,但是当console.log记录它们的值时,它们具有长短不一的数字值。

我希望这样的东西(伪代码)

isMatchDateToday(date: Date){
        var today = Date.now();
        if (date == today)
            {
            return "css-class-name";
            }
        }

1 个答案:

答案 0 :(得分:1)

示例-(丢弃小时,分钟,秒)

// sample method to generate the Date object
const firetimestamp =  new Date(firebasetimestamp.seconds * 1000);
// sample dates
const entry1 = new Date('2019-09-12'); 
const entry2 = new Date('2019-09-13');

您可以选择使用Date.prototype.toISOString()。 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString

export function Compare(value: Date): string {
  const today: Date = new Date();
  if (today.toISOString().substr(0, 10) === value.toISOString().substr(0, 10)) {
    return "success class-name";
  } else {
    return "error class-name";
  }
}

console.log(Compare(entry1));
console.log(Compare(entry2));

注意:从客户端而不是从服务器获取今天的日期