如何从欧洲格式转换日期

时间:2016-12-01 13:54:02

标签: angular

情况

从API我获得欧洲格式的日期:01-06-2018
即:日 - 月 - 年(2018年6月1日)。

我需要以更漂亮的方式展示 - 'd MMM y'格式正是我所需要的。

但是如果我以这种方式在视图中使用管道:

{{ projectInfo.project_start_date | date: 'd MMM y' }}

结果是:6 Jan 2018(在我的情况下应该是1 Jun 2018

因为它认为我的约会01-06-2018的前两个密码是月份 - 而它们是几天......

问题

如何在Angular 2中转换欧洲格式的日期?

我应该将组件从欧洲格式转换为美国格式吗?

如果是 - 你知道如何在Angular 2中做到这一点吗?

谢谢!

编辑

这是我尝试将从API收到的字符串转换为实际日期的方式:

在组件中:

dateTest: Date;
this.dateTest = new Date(this.projectInfo['project_start_date']);

在视图中:

<span> {{ dateTest | date: 'd MMM y' }} </span>

结果:

仍然相同:2018年1月6日

PLUNKER

https://plnkr.co/edit/ZYMoaoxawVCtScUZfL3B?p=preview

1 个答案:

答案 0 :(得分:0)

所有管道似乎都依赖于语言环境。尝试从主模块更改它:

providers: [
    { provide: LOCALE_ID, useValue: "en-US" }, //replace "en-US" with your locale
     appRoutingProviders 
]

sources