Фильтр даты Angularjs дает неправильный вывод - PullRequest
3 голосов
/ 15 мая 2019

В настоящее время я использую angularjs в своем проекте, в котором я конвертирую формат даты '2019-05-09T20: 09: 11.677Z' с использованием угловых js в 'MM / dd / yyyy', но это дает неправильный вывод '05/ 10 / 2019' .Ожидаемый результат: «05/09/2019».

1002 * В чем проблема?Кто-нибудь может мне помочь.

{{'2019-05-09T20: 09: 11.677Z' |дата: 'ММ / дд / гггг'}}

Токовый выход (неверно): 05/10/2019

Ожидаемый выход (справа): 05/09/2019

Ответы [ 2 ]

2 голосов
/ 15 мая 2019

Фильтр даты учитывает ваш часовой пояс.Поскольку дата, которую вы пытаетесь напечатать, имеет время 8 часов вечера, я думаю, вы находитесь в часовом поясе в диапазоне от +0400 до +1200, в результате чего дата попадает в 05/10/2019.

Если выхотите принудительно настроить часовой пояс на что-то другое, например, UTC, вы можете использовать

{{ '2019-05-09T20:09:11.677Z' | date:'MM/dd/yyyy' : '+0000' }}
0 голосов
/ 15 мая 2019

Вы должны указать часовой пояс как один из параметров.

{{ date_expression | date : format : timezone}}

Например:

{{date| date:'shortDate':'GMT' }}

Для получения дополнительной информации AngularJs

МаленькийДемо для вашей помощи Демо

...