Dev Friends
  • Início
  • Sobre
  • Angular
    • Drag and Drop com Angular Material e DropList dinâmica
      • Drag and Drop com múltiplas seleções
    • Reactive Forms (Formulários Reativos)
      • Formulário Simples
  • GIT
    • Git Flow
      • Configuração Inicial
      • Features
      • Releases
      • Hotfixes
  • Nuvem (AWS)
    • Hospedagem de site estático na AWS (Nuvem Amazon)
    • Utilização do serviço Route 53 para gerenciar DNS
  • Kotlin
    • Usando Quarkus e Kotlin
Powered by GitBook
On this page

Was this helpful?

  1. Angular

Reactive Forms (Formulários Reativos)

De fato é bem fácil trabalhar com eles, mas você pode está entrando num campo minado. Ficou curioso? Vem estudar comigo que eu te explico.

PreviousDrag and Drop com múltiplas seleçõesNextFormulário Simples

Last updated 4 years ago

Was this helpful?

Formulários Reativos

Eles são ótimos facilitadores, pois é sempre chato aplicar validações nos formulários, tais como deixar os campos vermelhos quando houver erro de preenchimento, desabilitar um campo quando outro for preenchido e etc. Aquilo tudo que vocês já conhecem bem ou vão se deparar em algum momento.

Pois bem, meu objetivo hoje é alertar para um perigoso caminho ao utilizar os Reactive Forms. Ao acessarmos o site iremos ver uma abordagem bem simplificada do seu uso.

 // Trechos retirados do site Reactive Forms - Angular
 
 // Aqui podemos ver a criação de um FormGroup com dois campos do tipo FormControl
 profileForm = new FormGroup({
    firstName: new FormControl(''),
    lastName: new FormControl(''),
  });

Acima podemos observar que um objeto do tipo FormGroup foi criado com dois FormControls firstName e lastName. Há de concordarmos que é uma forma bem simples de instanciarmos um objeto desse tipo.

 // Trecho retirados do site Reactive Forms - Angular
   
  <form [formGroup]="profileForm">
    <label>
    First Name:
    <input type="text" formControlName="firstName">
  </label>

  <label>
    Last Name:
    <input type="text" formControlName="lastName">
  </label>
</form>

Acredito continuarmos a concordar que o uso dos formulários reativos é bem fácil, entretanto, caso você ainda não tenha percebido o quanto essa forma apresentada é ruim e poderá trazer um prejuízo a longo prazo vou te explicar agora mesmo.

Pontos de atenção

  • Criamos os atributos firstName e lastName (FormControl) em tempo de execução, mas o ideal seria um objeto para identificar os atributos.

  • Para usar os controls e definir comportamentos da tela, vamos ter que informar seus nomes como parâmetro do método get(). Pelo menos para mim essa é a pior parte, imagina só você estar preso em saber o nome exato da variável ainda mais sem o autocomplete da IDE. Se o nome da variável mudar você terá um bom trabalho para mudar todas as referências a ela.

profileForm.get('firstName');

Mas nem tudo está perdido, com o decorrer dos tutoriais iremos abordar algumas formas que melhoraram a utilização dos formulários para nós, não iremos defender uma bandeira e dizer que a nossa forma é a melhor. Simplesmente é só mais uma forma dentre as diversas que você poderá vir a encontrar.

Agora vamos deixar de enrolação e colocar a mão na massa. Clique em para começarmos no nosso primeiro tutorial sobre esse tema.

Obrigado por chegar até aqui!

🤓
Reactive Forms - Angular
Formulário Simples
O Autor