Pesquisa de site

angular - Validação MinLength em Formulários Reativos Não Está Mostrando Erro


Estou usando ReactiveForms no meu App Angular. Eu quero que, se o usuário colocar menos de 7 números, a mensagem de erro seja exibida, mas infelizmente não está funcionando. Se houver algum erro ou solução, por favor me forneça. Obrigado

Serviço.ts

PhoneNo: ['', [Validators.required, Validators.minLength(7)]],

html

<input class="full-width has-padding has-border" formControlName="PhoneNo" type="tel" placeholder="Mobile *" />
        <img src="../../../../assets/img/required-img.png" class="required-img"
          *ngIf="service.formModel.get('PhoneNo').touched && service.formModel.get('PhoneNo').errors?.required"
          title="This fields is mandatory" data-toggle="tooltip" />
          <label *ngIf="service.formModel.get('PhoneNo').touched && service.formModel.get('PhoneNo').errors?.minLength">Minimum 7 characters required</label>

Resposta #1

Isso é muito enganoso do lado do Angular. Dentro do componente, você define os validadores da seguinte maneira:

[Validators.minLength(2)]

Então, você esperaria que o seguinte funcionasse:

errors?.minLength

por algum motivo, eles decidiram usar o seguinte formato para mensagens de erro dentro dos modelos, no entanto:

errors?.minlength

A única coisa que você precisa fazer é substituir L por l

Resposta #2

Mínimo de 9 caracteres exigidos

erro do usuário: chave como minlength em vez de minLength

Artigos relacionados