-
Notifications
You must be signed in to change notification settings - Fork 0
05_forms
Para referência a branch utilizada é a topicos/t5/p1.
Vamos criar um formulário simples, com alguns campos e regras de validação simples.
Template Driven Forms é o modelo de formulário aonde as regras de validação são adicionadas no proprio html.
Para criar o formulário:
- Adicionar a referência do bootstrap para melhorar layout, no arquivo app.component.css.
- Dentro de
src\appvamos criar um novo modulo aonde vamos colocar nossos formulários:ng g m cadastros- Adicione a referência para o FormsModule no CadastrosModule
- Dentro da pasta do módulo criado:
ng g class cadastroModelng g c templateDrive
- Crie o modelo padrão no template-drive.component.ts.
- Adicione o html do formulário no template-drive.component.html.
- Defina o TemplateDriveComponent no exports do CadastrosModule.
- Importe o CadastrosModule no AppModule.
- Adicione um novo item de router no app-routing.module.ts.
- Adicione a html da nova página no pag-layout.component.html.
A branch com as alteraçoes é a topicos/t6/p1.
Para ver as alteraçoes veja o DIFF das alteraçoes.
Para referência a branch utilizada é a topicos/t6/p1.
Model Driven Forms é o modelo de formulário aonde as regras de validação são adicionadas dentro de um modelo feito através do FormBuilder.
Para criar o formulário:
- Adicione a referência para o ReactiveFormsModule no CadastrosModule
- Dentro da pasta do módulo cadastros:
ng g c modelDrive
- Defina o código padrão no model-drive.component.ts.
- Adicione o html do formulário no model-drive.component.html.
- Defina o ModelDriveComponent no exports do CadastrosModule.
- Adicione um novo item de router no app-routing.module.ts.
- Adicione a html da nova página no pag-layout.component.html.
A branch com as alteraçoes é a topicos/t6/p2.
Para ver as alteraçoes veja o DIFF das alteraçoes.
Para referência a branch utilizada é a topicos/t6/p2.
É possível criar validadores assíncronos, para criar validações que precisam de confirmação externa. Vamos criar um validador de CPF.
Um validador Assíncrono tem o seguinte retorno: Observable<{ [key: string]: any } | null>
- { [key: string]: any } => { 'cep': true }: indica que que está inválido.
- null : indica que o campo está válido
Para criar o Validador:
- Adicione a referência para o HttpClientModule no CadastrosModule
- Dentro da pasta do módulo cadastros:
ng g s customValidators
- Defina o código do campo CEP no model-drive.component.ts.
- Adicione o html do formulário no model-drive.component.html.
- Adicione novo html do formulário no model-drive.component.html.
A branch com as alteraçoes é a topicos/t6/p3.
Para ver as alteraçoes veja o DIFF das alteraçoes.