Angular - Получить формат в виде строки, используемый для отображения дат в соответствии с локалью.
Как получить формат в виде строки, используемой Angular для отображения дат? Я использую date
труба после установки LOCALE_ID
в моем app.module
,
Теперь я хотел бы получить строку "dd/mm/yyyy", чтобы вставить мои входные заполнители.
В основном то, что описано здесь, но для Angular.
Спасибо
[редактировать]
Чтобы сделать это более явным, я не ищу способ форматирования дат, это уже сделано (с нативным date
труба). Я хочу строку, которая представляет формат, используемый этим каналом.
Потому что я хотел бы, чтобы мой заполнитель даты был похож на
"Дата (формат: XXXXXX)"
и я хочу, чтобы часть "XXXXXX" была правильной (то есть "jj/mm/aaaa" для французского, "mm/dd/yyyy" для английского)
2 ответа
Я надеюсь, что тем временем вы столкнулись с getLocaleDateFormat() и getLocaleTimeFormat(). (Угловой 6)
import { getLocaleDateFormat, FormatWidth } from '@angular/common';
export class Foobar {
constructor( @Inject( LOCALE_ID ) private locale: string ) { }
private getDateFormat() {
return getLocaleDateFormat( this.locale, FormatWidth.Short );
}
}
Если вы хотите декларативно отформатировать дату в своем шаблоне:
{{ today | date: 'dd/MM/yyyy' }}
Если вы хотите обязательно получить отформатированную дату в коде:
import { DatePipe } from '@angular/common';
// in your component class
var date = new DatePipe().transform(today, 'dd/MM/yyyy')