Witam, chciałem zmienić sobie format daty w ngbDatePicker i działa, ale tylko dla wyboru z popup'a - jeżeli chcę wpisać datę 'z palca', to już te zasady nie obowiązują i wpisuje się ciąg znaków.
Przegrzebałem mnóstwo wątków i nie działa, nie da się, brak pomysłów.
Czy ktoś spotkał się z czymś podobnym i rozwiązał problem? Wiem, że mogę ściągnąć jakieś ngx-mask'i, albo zrobić swoją ale wtedy jest problem bo wszędzie tam, gdzie mam inputa typu date muszę wstawiać dodatkowy kod.
@Injectable()
export class NgbDateISOParserFormatter {
readonly dateFormat = 'MM/DD/YYYY';
parse(value: string): NgbDateStruct {
if (value) {
value = value.trim();
const mdt = moment(value, this.dateFormat);
}
return mdt.format(this.dateFormat);
}
format(date: NgbDateStruct): string {
if (!date) { return ''; }
const mdt = moment([date.year, date.month - 1, date.day]);
if (!mdt.isValid()) { return ''; }
return mdt.format(this.dateFormat);
}
}
Specjalnie wchodzę w debuggerze w tą funkcję i działa także przy wpisywanych wartościach z klawiatury, nie tylko dla wyboru z popup'a