angular - Er det mulig å få minlength-verdi fra formcontrol?
Så jeg har min skjema validering. Og spørsmålet mitt er om jeg for eksempel kan få en minlength-verdi som jeg passerte når jeg opprettet formControl?
Jeg har ikke funnet noen informasjon.
Dette er min dumme komponent, og jeg vil få minlength-verdien for å sende den til informasjon. Nå trenger jeg å sende den via @Input().
title: ['', [Validators.required, Validators.minLength(4), Validators.maxLength(20)]]
.
<div class="validation-window">
<p *ngIf="errors.required">
{{field}} required
</p>
<p *ngIf="formControl.hasError('minlength')">
{{field}} at least {{minLegth}} characters
</p>
<p *ngIf="formControl.hasError('maxlength')">
{{field}} at least {{maxLength}} characters
</p>
</div>
Jeg vil erstatte {{maxLength}} med noe som formControl.validators.minlength.value;
Svar #1
Ja, du kan få tilgang til lengdetallet, både i maxlength og minlength. Du kan finne det inne i error-objektet, der det ligger under .maxlength.requiredLength og minlength.requiredLength. Det finnes også et felt med actualLength, men du ser ikke ut til å trenge det, men hvis du noen ganger gjør det! :)
<p *ngIf="formControl.hasError('maxlength')">
{{field}} at max {{formControl.errors.maxlength.requiredLength}} characters
</p>
<p *ngIf="formControl.hasError('minlength')">
{{field}} at least {{formControl.errors.minlength.requiredLength}} characters
</p>
DEMO
