Conoce la importancia de los formularios para tu sitio web

1

驴Por qu茅 aprender Angular Forms?

2

Presentaci贸n del proyecto: tour por los formularios de Platzi Store

3

Novedades de Angular 10: c贸mo migrar proyectos de Angular 8 o 9 a la versi贸n 10

Primeros pasos con Angular Forms

4

Template Forms vs. Reactive Forms

5

Dominando el FormControl y sus estados

6

C贸mo usar inputs de texto y la importancia del type

7

Manejo y binding de selects y selects m煤ltiples

8

Manejo y binding de inputs radio y checkbox

9

Aplica validaciones a un FormControl

10

Integraci贸n y validaciones con CSS para mostrar errores

Descubre todas las validaciones de Angular Forms

11

Usando FormGroup para agrupar multiples campos

12

Reactive Forms con FormBuilder

13

Los 11 validadores de Angular (y expresiones regulares)

14

Manejando m煤ltiples FormsGroups

15

Usando componentes de Angular Material

16

Errores comunes de usabilidad en formularios

17

Validaciones personalizadas: mejorando nuestro formulario de registro

Implemeta validaciones avanzadas en PlatziStore

18

C贸mo hacer validaciones grupales en Angular Forms

19

Validaciones condicionadas y reactividad a variaciones en la UI

20

Proyecto: formulario para crear categor铆as de productos

21

Proyecto: conectando nuestro formulario y la API

22

Proyecto: subir im谩genes a Firebase Storage

23

Validaciones asincr贸nicas

24

PatchValue: crear vs. editar

25

Proyecto: creando el m茅todo de editar categor铆as

Construye formularios din谩micos conectando una API

26

Smart vs. dumb components: un patr贸n para dividir responsabilidades

27

Implementando smart y dumb components en PlatziStore

28

Proyecto: mejorando nuestro formulario de productos

29

Select din谩mico: carga opciones desde una API

30

Select din谩mico: trabajando con objetos

31

驴C贸mo crear campos on demand? Forms din谩micos con FormArray

Estrategias avanzadas y optimizaci贸n de formularios

32

Crea tu propia librer铆a de componentes con CVA o Control Value Accesor

33

Crea un buscador de gifs usando la API de Giphy

34

Optimiza un input de b煤squedas con RxJS y debounce

35

Examina la accesibilidad de tus formularios

36

Siguientes pasos en tu carrera de desarrollo web profesional con Angular

No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Reactive Forms con FormBuilder

12/36
Recursos

Aportes 11

Preguntas 5

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Reg铆strate o inicia sesi贸n para participar.

Notas

<h4>FormControl</h4>

Cada uno de los campos del formulario.

<h4>FormGroup</h4>

Conjunto de campos (FormControl)

<h4>FormBuilder</h4>

Servicio, requiere inyecci贸n de dependencias en el constructor.

los ultimos videos parece que se cortan o solo me pasa a mi?, el sonido esta bien, pero la imagen parece que salta cada x segundos

Se est谩 pegando el video.

El audio esta bien, el video esta lagueado鈥

驴c贸mo subscribirse a un solo field usando formGroup?

this.form.get("firstname").valueChanges.subscribe(x => {
   console.log(x)
})

Una forma un poco menos trabajosa de controlar los errores es creando un m茅todo, que incluso se puede tener en una clase abstracta para obtener los errores que tiene cierto control de la siguiente forma

export class GeneralValidators {
  public hasError = (
    form: FormGroup,
    controlName: string,
    errorName: string
  ) => {
    return form.controls[controlName].hasError(errorName);
  };
}

de esta forma si inyectamos esta clase en nuestro componente solo debemos usar el m茅todo para obtener el error de una validacion de la siguiente forma

<mat-error
   *ngIf="generalValidators.hasError(form, 'required')">
   Required Field
</mat-error>

De esta forma en una manera mas resumida podemos obtener los errores de un formgroup y aplicarlo en directivas en el template de una manera mas resumida y ordenada

Builder adopted!

es mucho mas c贸modo, hermoso c贸digo 馃槂

Buena pr谩ctica de validaci贸n de forms

Les ha salido este error al colocar las validaciones?
Error TS2531 object is possibly null in angular reactive forms
Lo solucion茅 de esta forma

"forceConsistentCasingInFileNames": false,
   "strict": false,
   "noImplicitReturns": false,
   "noFallthroughCasesInSwitch": false,
   ...
   "angularCompilerOptions": {
      "strictInjectionParameters": false,
      "strictInputAccessModifiers": false,
      "strictTemplates": false
   }

Me gusto mucho esta clase, no sabia que se podr铆a usar de manera mas limpia los formularios con el formBuilder.