Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Mensagem de minLength não aparece

Limitei o campo chamado "marca" em um projeto que estou fazendo para receber no mínimo 3 caracteres, como foi explicado na aula, porém só aparece a mensagem caso não preencha o campo, se colocar 2 caracteres a mensagem de minLength não aparece.

formulario!: FormGroup;

  constructor(private service: VeiculoService, private router: Router, private formBuilder: FormBuilder) {}

  ngOnInit(): void {
    this.formulario = this.formBuilder.group({
      marca: ['', Validators.compose([
        Validators.required,
        Validators.minLength(3),
        Validators.pattern(/(.|\s)*\S(.|\s)*/)
      ])],
      modelo: ['', Validators.compose([
        Validators.required,
        Validators.minLength(3),
        Validators.pattern(/(.|\s)*\S(.|\s)*/)
      ])],
      tipo: ['', [Validators.required]],
      condicao: ['', [Validators.required]],
      cor: ['', Validators.compose([
        Validators.required,
        Validators.minLength(3),
        Validators.pattern(/(.|\s)*\S(.|\s)*/)
      ])],
      ano: [0, [Validators.required]],
      preco: [0, [Validators.required]]
    })
  }
<div class="form-floating col-sm-6 mb-3">
                <input class="form-control" type="text" name="marca" placeholder="Marca do veículo" formControlName="marca">
                <label for="marca">Marca</label>
                <div class="mensagem__erro" *ngIf="formulario.get('marca')?.errors?.['required'] && formulario.get('marca')?.touched">
                    A marca do veículo é obrigatória!
                </div>
                <div class="mensagem__erro" *ngIf="formulario.get('marca')?.errors?.['minLength'] && formulario.get('marca')?.touched">
                    A marca do veículo deve ter no mínimo 3 caracteres!
                </div>
</div>
1 resposta
solução!

Achei o problema, o L de minlength está maiúsculo, o correto é minúsculo