Мне удалось интегрировать bsDatepicker в мое приложение Angular 5, а также применить настройку проверки для различных сценариев.
У меня 1 проблема с конкретным сценарием: при нажатии на текстовое поле появляется окно выбора даты, затем нажмитеBackspace, чтобы удалить дату вручную.Все идет нормально.Несмотря на то, что средство выбора даты все еще открыто, после завершения удаления я выбираю дату из средства выбора и вижу свое пользовательское сообщение об ошибке required .
Я надеюсь, что оно не связано с bsDatepicker.Вот некоторый код: Из шаблона:
<input type="text" class="form-control" name="myDate"
dateValidator placeholder="mm/dd/yyyy" [ngModelOptions]="{ updateOn: 'blur' }"
#myDate="ngModel" [(ngModel)]="mydate" id="myDate" autocomplete="off"
required bsDatepicker [bsConfig]="dpConfig">
<div *ngIf="myDate.errors && (myDate.touched || cFormDirective.submitted)">
<div class="error_message" *ngIf="myDate.errors?.required">
Please enter date
</div>
</div>
Из импорта:
import {enGbLocale} from 'ngx-bootstrap/locale';
import {BsLocaleService, defineLocale, BsDatepickerConfig} from 'ngx-bootstrap';
Из конструктора компонента:
enGbLocale.invalidDate = '';
defineLocale('custom locale', enGbLocale);
this.localeService.use('custom locale');
this.dpConfig.showWeekNumbers = false;
this.dpConfig.dateInputFormat = 'MM/DD/YYYY';
Обратите внимание, что после ошибкипоказано, если я выберу дату, все в порядке.Есть идеи, как избежать появления ошибки в этом случае?Спасибо.
ОБНОВЛЕНИЕ
Посмотрите на ссылку ниже: введите описание ссылки здесь
Прокрутите вниз к примерами вы увидите, что это существующая проблема.Снова запустите средство выбора, выберите дату и вручную удалите дату.При удалении открывается окно выбора, выберите дату, и вы увидите, что оно не скопировано в текстовое поле.