问题描述
我将一个 UTC 日期时间传递给 angular 应用程序,我想在不同的时区显示时间。这是 Postman 上返回的日期的样子:
"2021-07-21T09:15:00" - this is in UTC.
我想将其转换为不同的时区(在运行时确定),所以我尝试了以下类似的方法,但它始终显示相同的 UTC 值。
<ng-template kendoGridCellTemplate let-dataItem>
{{ dataItem.returnedTime | date: 'hh:mm a' : 'IST' }}
</ng-template>
我也尝试了以下方法:
<ng-template kendoGridCellTemplate let-dataItem>
{{ dataItem.returnedTime | date: 'shortTime' : 'IST' }}
</ng-template>
<ng-template kendoGridCellTemplate let-dataItem>
{{ dataItem.returnedTime | date: 'hh:mm a' : '+530' }}
</ng-template>
这是怎么回事?A
解决方法
如果该值是 UTC,它的末尾应该有一个 Z
,如 "2021-07-21T09:15:00Z"
。
...当 UTC 偏移量表示不存在时,仅日期形式被解释为 UTC 时间,日期时间形式被解释为本地时间。
将 Z
附加到输入字符串,无论是在后端还是在您收到它时,它都应该可以正常工作。