Angular 日期管道考虑了时区
Angular date pipe takes into account timezone
我正在使用日期管道来显示我从网络服务 API 获得的时间。日期以 yyyy-MM-ddThh:mm:ss.000Z
的形式出现,例如 2020-08-12T07:06:07.000Z
.
但是当我使用angular日期管道{{ arr.time | date:'mediumTime' }}
时,显示的时间比给定的时间多了三个小时,例如这里显示的时间是10:06:07
。我怀疑这是因为浏览器考虑了我的时区 GMT+3。如何在不考虑时区的情况下显示准确时间?
尝试在管道中添加时区,
例如以分钟为单位指定...对于 GMT+3,时区:'180'
{{ arr.time | date:'mediumTime' : '180'}}
可以在 angular 日期管道中明确提及时区。
{{ value_expression | date [ : format [ : timezone [ : locale ] ] ] }}
或者您可以以分钟为单位指定时间,例如 GMT-2,时区:'-120'
{{ yourDate | date: 'mediumTime' : '-120'}}
或者请参考这个答案,它可能对你有帮助:-
可以有两种情况:
- 您得到的日期值是 UTC
- UTC 以外的时间
如果是 UTC,最后一个字符必须包含 'Z'。
因此,对于非 UTC,我们可以在将其传递给管道
之前添加 'Z'
这将始终打印收到的任何日期值
{{arr.time?.charAt(arr.time?.length - 1) === 'Z' ? (arr.time | date:'mediumTime':'UTC') : (arr.time?.concat('Z') | date:'mediumTime':'UTC')}}
我正在使用日期管道来显示我从网络服务 API 获得的时间。日期以 yyyy-MM-ddThh:mm:ss.000Z
的形式出现,例如 2020-08-12T07:06:07.000Z
.
但是当我使用angular日期管道{{ arr.time | date:'mediumTime' }}
时,显示的时间比给定的时间多了三个小时,例如这里显示的时间是10:06:07
。我怀疑这是因为浏览器考虑了我的时区 GMT+3。如何在不考虑时区的情况下显示准确时间?
尝试在管道中添加时区,
例如以分钟为单位指定...对于 GMT+3,时区:'180'
{{ arr.time | date:'mediumTime' : '180'}}
可以在 angular 日期管道中明确提及时区。
{{ value_expression | date [ : format [ : timezone [ : locale ] ] ] }}
或者您可以以分钟为单位指定时间,例如 GMT-2,时区:'-120'
{{ yourDate | date: 'mediumTime' : '-120'}}
或者请参考这个答案,它可能对你有帮助:-
可以有两种情况:
- 您得到的日期值是 UTC
- UTC 以外的时间
如果是 UTC,最后一个字符必须包含 'Z'。 因此,对于非 UTC,我们可以在将其传递给管道
之前添加 'Z'这将始终打印收到的任何日期值
{{arr.time?.charAt(arr.time?.length - 1) === 'Z' ? (arr.time | date:'mediumTime':'UTC') : (arr.time?.concat('Z') | date:'mediumTime':'UTC')}}