У меня есть требование преобразовать и отформатировать поля DateTime на основе региональных настроек браузера, в котором запущен сайт, с указанием даты и времени, например: мм / дд / гггг чч: мм: сс AM/ PM (Сокращение часового пояса) где в часах в 12ч / 24ч в зависимости от настроек браузера.
, т. Е. Если браузер запущен в US ,формат даты и времени будет мм / дд / гггг чч: мм: сс PM / AM (EST) или мм / дд / гггг чч: мм: сс PM / AM (CST) и т. д.
Если браузерзапускается в Индия , Дата Время для дд / мм / гггг чч: мм: сс PM / AM (IST) и т. д.
В настоящее время все даты и времени сохраняются в формате UTC вБаза данных, чтобы добиться этого, я попробовал Angular-момент (https://www.npmjs.com/package/ngx-moment), как показано ниже:
{{ item.createdDate | amLocal | amDateFormat: 'L' }} {{ item.createdDate | amLocal | amDateFormat: 'LTS (Z)' }}
приводит к 03/06/2019 14:19:36 PM(+05: 30)
Проблемы с результатом выше:
Для сокращений часовых поясов формат z или zz устарел согласно http://momentjs.com/docs/#/displaying/format/ документация, поэтому я попытался использовать Angular-Moment-timezone (https://www.npmjs.com/package/angular-moment-timezone), но, похоже, нам нужно передать конкретный часовой пояс в качестве параметра в трубу amTz, как показано ниже:
{{ myDate | amTz:'America/New_York' | amDateFormat }}
Следовательно, я почти 6 часов работаю над тем, какотформатируйте DateTime как мм / дд / гггг чч: мм: сс AM / PM (XXX) где в часах в 12 ч / 24 ч в зависимости от настроек браузера, специфичных для региона / региона.
Посоветуйте, пожалуйста, как этого добиться, ваша помощь приветствуется ..