Flux de données Angular2+ :
En Angular, les données peuvent circuler entre le modèle (classe du composant, fichier ts) et la vue (html du composant) de la manière suivante :
- Du modèle à la vue.
- De la vue au modèle.
- Les données circulent dans les deux sens, également appelées Liaison de données à 2 voies .
Syntaxe :
modèle à visualiser :
<input type="text" [ngModel]="overRideRate">
Cette syntaxe est également connue sous le nom de liaison de propriété . Maintenant, si le overRideRate
du champ de saisie change, la vue est automatiquement mise à jour. Cependant, si la vue est mise à jour lorsque l'utilisateur saisit un nombre, la propriété de la zone de saisie sera automatiquement mise à jour. overRideRate
ne sera pas mis à jour.
de la vue au modèle :
(input)="change($event)" // calling a method called change from the component class
(input)="overRideRate=$event.target.value" // on input save the new value in the title property
Ce qui se passe ici, c'est qu'un événement est déclenché (dans ce cas, un événement d'entrée, mais il peut s'agir de n'importe quel événement). Nous pouvons alors appeler des méthodes de la classe du composant ou enregistrer directement la propriété dans une propriété de classe.
Liaison de données à double sens :
<input [(ngModel)]="overRideRate" type="text" >
La syntaxe suivante est utilisée pour la liaison de données bidirectionnelle. Il s'agit essentiellement d'un sucre syntaxique pour les deux :
- Lier le modèle à la vue.
- Lier la vue au modèle
Maintenant, si quelque chose change à l'intérieur de notre classe, cela reflétera notre vue (model to view), et chaque fois que l'utilisateur modifie l'entrée, le modèle sera mis à jour (view to model).