我有一个离子卡,其中显示了从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";
}
}
答案 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));
注意:从客户端而不是从服务器获取今天的日期