#angular #typescript #angular-material
Вопрос:
Я пытаюсь отформатировать дату с помощью директивы, используя угловые реактивные формы, но с немецким языком MatDatepicker, похоже, работает не так, как хотелось бы.
В моем DateDirective
я построил метод ниже:
public ngOnInit(): void {
const control = this.ngControl.control;
if (control) {
control.setValue(Parser.parseDate(control.value, this.locale), { emitEvent: false });
control.valueChanges.subscribe(newDate => {
newDate = Parser.parseDate(newDate, this.locale);
control.setValue(newDate, { emitEvent: false });
});
}
}
Если я выберу дату из списка дат, она будет работать нормально. Например, я выбираю в списке дат 19 марта 2021 года, и в поле формы отображается вывод 19.3.2021
. Но если я напишу одно и то же значение непосредственно в поле, значение newDate
будет null
равно . Я заметил, что, когда я записываю дату в поле ввода, индикатор даты анализирует ее как mm.dd.yyyy
. Есть ли у кого-нибудь идеи о том, как избавиться от этой ошибки/проблемы без необходимости переопределения NativeDateAdapter
?
Спасибо!