validar reactivos formularios formulario angular angular2-forms

reactivos - validar formulario angular 5



¿Cuáles son las diferencias prácticas entre las formas reactivas y basadas en plantillas? (4)

He estado leyendo sobre la nueva API de formularios de Angular2 y parece que hay dos enfoques en los formularios, uno es formularios basados ​​en plantillas y otro son formularios reactivos o modelos.

Me gustaría saber la diferencia práctica entre los dos, no la diferencia en la sintaxis (obviamente) sino los usos prácticos y qué enfoque se beneficia más en diferentes escenarios. Además, ¿hay un aumento de rendimiento al elegir uno sobre el otro? Y si es así, ¿por qué?


Aquí está el resumen de la comparación entre plantillas dirigidas y formas reactivas explicadas por DeborahK (Deborah Kurata) bien,


Creo que es una discusión sobre código , estrategia y experiencia del usuario .

En resumen, cambiamos por un enfoque basado en plantillas que es más fácil de trabajar con él, a reactivo (en un enfoque basado en modelos) para darnos más control , lo que resulta en una mejor forma comprobable al aprovechar un desacoplamiento entre el HTML (diseño / El equipo de CSS puede trabajar aquí) y las reglas comerciales de los componentes (miembros especialistas en angular / js) y para mejorar la experiencia del usuario con características como transformaciones reactivas, validaciones correlacionadas y manejar escenarios complejos como reglas de validación de tiempo de ejecución y duplicación de campos dinámicos.

Este artículo es una buena referencia al respecto: Formularios angulares 2 : enfoques basados ​​en plantillas y en modelos


Formas reactivas:

  • reutilizable
  • más robusto,
  • comprobable
  • más escalable

Formas basadas en plantillas:

  • fácil de agregar,
  • menos escalable
  • requisitos básicos de forma

En resumen , si los formularios son muy importantes para su aplicación, o si se usan patrones reactivos en su aplicación, debe usar formularios reactivos . De lo contrario, su aplicación tiene requisitos básicos y simples para formularios como iniciar sesión, debe usar formularios basados ​​en plantillas .

Hay un enlace oficial angular


Características de formularios controlados por plantilla

  • Fácil de usar
  • Adecuado para escenarios simples y falla para escenarios complejos
  • Similar a AngularJS
  • [(NgModel)] datos bidireccional (usando la sintaxis [(NgModel)] )
  • Código de componente mínimo
  • Seguimiento automático del formulario y sus datos (manejado por Angular)
  • Las pruebas unitarias son otro desafío

Características de los formularios reactivos

  • Más flexible, pero necesita mucha práctica.
  • Maneja cualquier escenario complejo
  • No se realiza ningún enlace de datos (modelo de datos inmutable preferido por la mayoría de los desarrolladores)
  • Más código de componente y menos marcado HTML
  • Las transformaciones reactivas pueden hacerse posibles como
    • Manejo de un evento basado en un tiempo de rebote
    • Manejo de eventos cuando los componentes son distintos hasta que se cambian
    • Agregar elementos dinámicamente
  • Pruebas unitarias más fáciles