2017-08-09 56 views
5

我有一個日期字符串,就像這個1987-06-15T00:00:00.000Z,當我添加日期管道時,日期在美國時區顯示不同的日期,如Jun 14, 1987,但在印度,它顯示正確。Angular2日期管道自動添加時區

<div>{{'1987-06-15T00:00:00.000Z' | date}}</div> 
+0

你要像'DD/MM/yyyy'輸出? –

+0

您可以在日期管道中指定格式。如果您對可用日期管道格式不滿意,則可以在模塊中創建並註冊自己的管道。 – Amit

回答

1

此代碼爲我工作

<div>{{date_of_birth.split("T")[0] | date}}</div> 
4

字符串1987-06-15T00:00:00.000Z表示不同瀏覽器時區中的不同日期。

修復

如果你不想根據時區更改日期,只需使用字符串解析(例如substr),而不是日期解析。

+0

日期管道中是否有任何選項? – byteC0de

+0

沒有。它意味着代表用戶時區中的給定日期。 – basarat

+1

源代碼: 警告: - 此管道使用國際化API。因此它只在Chrome和Opera瀏覽器中可靠。 https://github.com/angular/angular/blob/4.3.3/packages/common/src/pipes/date_pipe.ts#L16-L143 – MeMeMax