pelo componente e pelo template – Valores, validações, erros – em lugares diferentes • Validações acopladas à estrutura de controles – Validators dentro de cada formControl e mensagens de erro dentro do template • Sincronização manual entre modelo de dados e form • RxJS obrigatório para reatividade – valueChanges, statusChanges
implícito e silencioso – Valor retornado era `any` – Erros apareciam em runtime ANGULAR >= 14 • FormControl<T> – Contrato explícito – Valor agora pode ser T | null • Se você não quer o null, use o {nonNullable: true} no seu controle
Í D O • O que é: • É um valor reativo que não depende de inscrição para ser atualizado • Por que agora? • Zonejs : Zoneless • Impacto • Atributos/propriedades, inputs, outputs, estados – tudo pode ser signal.
Status Stable Experimental Fonte da verdade FormControl / FormGroup Signal Type safety Explícito por controls Inferido no signal Validação Validator por control Schema centralizado Reatividade Observables Signal Form dinâmico FormArray, FormRecord @for Production ready Sim Não recomendado
Rxjs já sendo usado na base do código • EQUIPE DOMINA O MODELO ATUAL USE FORMS SIGNAL QUANDO • App novo totalmente signal first • Type safety inferido no modelo • Prefere validação centralizada em schema
Rxjs já sendo usado na base do código • EQUIPE DOMINA O MODELO ATUAL USE FORMS SIGNAL QUANDO • App novo totalmente signal first • Type safety inferido no modelo • Prefere validação centralizada em schema
de “SignalFormControl” É usado da mesma forma que um formControl, mas recebe validadores reativos Você pode adicionar esse signalFormControl dentro do seu controle reativo