我在Angular 7日期选择器中显示日期有些麻烦。我创建了自己的日期适配器,以dd / MM / yyyy格式显示日期。 我面临的问题是UTC中的日期,将日期格式设置为dd / MM / yyy使它们看起来正确,但是,如果将日期时间设置为23:00,则日期显示为一天,但是在日期选择器设置为第二天(GMT + 1)。
我尝试使用时刻将日期选择器强制为UTC格式,但是,这似乎没有生效,并且仍然以我的本地时间考虑日期。
开始日期:2019-09-02T00:00:00Z
结束日期:2019-09-04T23:59:00Z
我尝试过的代码:
providers: [
{ provide: MAT_MOMENT_DATE_ADAPTER_OPTIONS, useValue: { useUtc: true } }
]
我的日期格式适配器:
export class UKDateAdapter extends NativeDateAdapter {
format(date: Date, displayFormat: Object): string {
const day = date.getUTCDate();
const month = date.getUTCMonth() + 1;
const year = date.getUTCFullYear();
return `${this._to2digit(day)}/${this._to2digit(month)}/${year}`;
}
private _to2digit(n: number) {
return ('00' + n).slice(-2);
}
}
我希望在日期选择器中选择的值突出显示第4个,但仍显示为第5个。选择任何日期都会使它的值在1天后消失。