Я работаю над приложением Angular 8 и следую подходу реагирующих форм. Столкнувшись с проблемой с числовым текстовым полем и скопировав пример кода ниже.
Машинопись:
this.sampleForm = this.formBuilder.group({
age: ['', [Validators.required, Validators.pattern('/^-?(0|[1-9]\d*)?$/')]]
});
HTML:
<div class="form-group">
<label>Age</label>
<input type="number" formControlName="age" class="form-control" [ngClass]="{ 'is-invalid': submitted && f.age.errors }" />
<div *ngIf="submitted && f.age.errors" class="invalid-feedback">
<div *ngIf="f.age.errors.required">Age is required</div>
<div *ngIf="f.age.errors.pattern">invalid age value</div>
</div>
</div>
Пример значения ввода:
'- 035040958094385-3443-4355'
Ожидаемая ошибка проверки:
'недопустимое значение возраста'
Actualошибка проверки:
«Требуется возраст»