1
resposta

formBuilder.group @deprecated

Prof. Quando acrescentei o usarioSenhaIguaisValidator, o " this.formBuilder.group" ficou @deprecated com a seguinte mensagem:

@deprecated
This API is not typesafe and can result in issues with Closure Compiler renaming. Use the FormBuilder#group overload with AbstractControlOptions instead. Note that AbstractControlOptions expects validators and asyncValidators to be valid validators. If you have custom validators, make sure their validation function parameter is AbstractControl and not a sub-class, such as FormGroup. These functions will be called with an object of type AbstractControl and that cannot be automatically downcast to a subclass, so TypeScript sees this as an error. For example, change the (group: FormGroup) => ValidationErrors|null signature to be (group: AbstractControl) => ValidationErrors|null.
    this.novoUsuarioForm = this.formBuilder.group(
      {
        email: ['', [Validators.required, Validators.email]],
        fullName: ['', [Validators.required, Validators.minLength(4)]],
        userName: [
          '',
          [minusculoValidator],
          /** Validação assíncrona usando Observable */
          [this.usuarioExistenteService.usuarioJaExiste()],
        ],
        password: [''],
      },
      {
        validators: [usuarioSenhaIguaisValidator],
      }
    );
1 resposta

Olá, Marcus! Tudo certo?

Desculpa a demora!

Este aviso é correto, a maneira com que o formBuilder está sendo usado não é mais recomendada pelo Angular e a própria documentação traz isso (Angular - Form Builder).

Minha recomendação é não refatorar e seguir o curso. É comum que com novas versões, as soluções das linguagens sejam alteradas, e em projetos já prontos essas modificações levam um tempo para serem feitas.

Bons estudos!