web-dev-qa-db-fra.com

Quelles sont les différences pratiques entre les formulaires réactifs et basés sur des modèles?

Je lisais des informations sur la nouvelle API de formulaires Angular2 et il semblerait qu'il existe deux approches pour les formulaires: l'une est gérée par un modèle, l'autre est réactive ou gérée par un modèle.

Je voudrais connaître la différence pratique entre les deux, pas la différence de syntaxe (évidemment) mais les utilisations pratiques et quelle approche profite davantage dans des scénarios différents. En outre, le fait de choisir l’un sur l’autre offre-t-il un gain de performance? Et si oui pourquoi?

123
gdyrrahitis

Caractéristiques des formulaires basés sur des modèles

  • Facile à utiliser
  • Convient aux scénarios simples et échoue aux scénarios complexes
  • Similaire à AngularJS
  • Liaison de données bidirectionnelle (à l'aide de la syntaxe [(NgModel)])
  • Code de composant minimal
  • Suivi automatique du formulaire et de ses données (géré par Angular)
  • Les tests unitaires sont un autre défi

Caractéristiques des formulaires réactifs

  • Plus flexible, mais nécessite beaucoup de pratique
  • Gère tous les scénarios complexes
  • Aucune liaison de données n'est effectuée (modèle de données immuable préféré par la plupart des développeurs)
  • Plus de code composant et moins de balisage HTML
  • Des transformations réactives peuvent être rendues possibles telles que
    • Gestion d'un événement en fonction d'un temps d'anti-rebond
    • Gestion des événements lorsque les composants sont distincts jusqu'à ce qu'ils soient modifiés
    • Ajouter des éléments dynamiquement
  • Tests unitaires plus faciles
137
Aravind

Je pense que c’est une discussion sur le code , la stratégie et .

En résumé, nous changeons pour une approche basée sur un modèle qui est plus facile à utiliser avec elle, en réactif (dans une approche dirigée par un modèle) pour nous donner plus de contrôle , ce qui donne une forme plus vérifiable en exploitant un découplage entre le code HTML (équipe de conception/CSS) peut travailler ici) et les règles de gestion du composant (membres angulaires/js spécialiste) et d'améliorer l'expérience utilisateur grâce à des fonctionnalités telles que les transformations réactives, les validations corrélées et la gestion scénarios complexes tels que règles de validation à l'exécution et duplication de champs dynamiques.

Cet article est une bonne référence à ce sujet: Angular 2 Forms - Approches axées sur les modèles et sur les modèles

20
Richard Lee

Voici le résumé de la comparaison entre les formes gérées par les modèles et les formes réactives expliquées par DeborahK (Deborah Kurata) ainsi, enter image description here

14
Sajeetharan - MSFT

Formes réactives:

  • réutilisable,
  • plus robuste,
  • testable,
  • plus évolutif

Formulaires basés sur des modèles:

  • facile à ajouter,
  • moins évolutif,
  • exigences de forme de base

Dans les résumés , si les formulaires sont très importants pour votre application ou si des motifs réactifs sont utilisés dans votre application, vous devez utiliser des formulaires réactifs . Sinon, votre application a des exigences simples et fondamentales pour des formulaires tels que la connexion, vous devez utiliser des formulaires gérés par des modèles .

Il y a un angular lien officiel

0
fgul