Jus*_*dow 12 date-pipe angular
我想使用 DatePipe 转换数字(代表秒)以获得如下结果:
00:00:05
我试过用 DatePipe 这样做:
<label>No timezone (default) {{ 5 * 1000 | date:'h:mm:ss'}}</label>
Run Code Online (Sandbox Code Playgroud)
但它产生的结果包含时区 +4(这不是我想要的):
4:00:05
所以为了避免这种情况,我试图将时区偏移设置为 0:
<label>{{ 5 * 1000 | date:'h:mm:ss z':'+0000'}}</label>
<label>{{ 5 * 1000 | date:'h:mm:ss z':'UTC'}}</label>
<label>{{ 5 * 1000 | date:'h:mm:ss z':'GMT'}}</label>
<label>{{ 5 * 1000 | date:'h:mm:ss z':'GMT+0'}}</label>
<label>{{ 5 * 1000 | date:'h:mm:ss z':'UTC+0'}}</label>
Run Code Online (Sandbox Code Playgroud)
但这一次时间移动了 12 小时而不是 0:
12:00:05 格林威治标准时间+0
那么有没有一种方法可以在不移动时区的情况下使用 DatePipe 将秒转换为时间?
或者是否有任何其他角度的管道可用于此目的?
Jus*_*dow 22
所以这个相当棘手的问题有一个非常简单的解决方案。
我们只需要使用 'H' 而不是 'h'(范围是 0-23)。
例子:
<label>{{ 5 * 1000 | date:'H:mm:ss':'UTC'}}</label>
Run Code Online (Sandbox Code Playgroud)
获得 '12' 的原因是在时间格式中使用了 'h',该格式将值限制为 1 到 12,并将 00:00 转换为 12:00 (AM)。
| 归档时间: |
|
| 查看次数: |
12740 次 |
| 最近记录: |