首页 > 解决方案 > 插入记录时 Angular2 时间不正确。如何征收 GTM+2.00?

问题描述

在我的应用程序中,我有一个页面可以插入具有“performedOn”属性的记录。当插入带有日期的记录时(24/07),时间是 00.00am,但 GTM 是 -2.00 实际上保存时,日期更改(23/07 下午 22.00)。怎么改时间??感谢!!!

标签: angulartypescriptdatetimetimelocaltime

解决方案


您需要更改语言环境或仅更改时区。

  • 您可以更改当前日期对象的区域设置或时区,并使用DatePipe将其手动转换为您的需要。

首先你需要在你的 app.module 文件中导入 DatePipe

import { DatePipe } from '@angular/common';

将其添加到 @NgModule 中的提供程序。

providers: [DatePipe]

在 component.ts 中:

导入到组件中。

import { DatePipe } from '@angular/common';

将其添加到构造函数中。

constructor(private datePipe: DatePipe){}

然后你可以做这样的事情。这会将日期转换为时区 GMT+2.00。

dateObject = new Date();

formattedDate = this.datePipe.transform(this.dateObject, 'full', '+200');

您可以在此处查看示例。

澄清。DatePipe有 3 个参数(格式、时区、语言环境),您可以像这样调用它们。

this.myPipe.transform(myData, arg1, arg2, arg3)

您还可以使用 html 中的 Pipe 进行格式化,如下所示:

{{ myData | myPipe: 'arg1':'arg2':'arg3'... }}

因此,要制作正确的日期格式,您可以使用这些参数。

如果要进行全局更改,可以检查:


推荐阅读