【发布时间】:2019-10-17 03:50:24
【问题描述】:
我使用以下模式:
{{ item.EVPDATA | date: "dd.mm.yyyy HH:mm" }}
值item.EVPDATA是UNIX时间1566473370:
我得到格式化的数据:
19.07.1970 07:07
为什么我得到错误的数据?
【问题讨论】:
我使用以下模式:
{{ item.EVPDATA | date: "dd.mm.yyyy HH:mm" }}
值item.EVPDATA是UNIX时间1566473370:
我得到格式化的数据:
19.07.1970 07:07
为什么我得到错误的数据?
【问题讨论】:
由于您的数据是 unix 时间的,因此在将其传递给日期管道之前,您需要将其转换为日期时间戳(通过 *1000),下面的代码应该可以工作 -
{{ (item.EVPDATA * 1000) | date: "dd.MM.yyyy HH:MM"}}
有关日期的更多速记管道值,您可以参考 -
【讨论】:
尝试: {{ 项目.EVPDATA |日期:“dd.MM.yyyy HH:mm”}}
【讨论】:
19.07.1970 07:07
Thu, 22 Aug 2019 11:29:30 GMT
以下是 DatePipe 的文档: https://angular.io/api/common/DatePipe
你试过了吗:
{{ item.EVPDATA * 1000 | date: 'EEEE, MMMM d, y, h:mm:ss a zzzz' }}
【讨论】:
您可以使用自定义管道:
import { Pipe, PipeTransform } from "@angular/core";
@Pipe({
name: "mypipe"
})
export class MyPipe implements PipeTransform {
transform(unix: any): string {
const time = new Date(unix * 1000)
return time.toString();
}
}
{{ item.EVPDATA | mypipe }}
【讨论】: