3
votes

Quand utiliser ViewChild et NgModel, en quoi sont-ils différents?

Je suis un peu confus à propos de ViewChild et de NgModel. Quelqu'un peut-il me donner une réponse définitive sur le moment d'utiliser Viewchild et ngModel? Je comprends que les deux pointeront vers un élément particulier et que vous pouvez utiliser ces objets pour obtenir la valeur actuelle de l'élément.


0 commentaires

3 Réponses :


2
votes

NgModel est utilisé pour les entrées et est utilisé dans les formulaires alors qu'un Viewchild peut être utilisé pour pointer vers un composant / une directive que vous avez sur votre page.

NgModel vous donnera des valeurs pour un champ de formulaire donné

ViewChild vous permettra également d'accéder à toutes les propriétés publiques (valeurs) et méthodes du composant que vous pointez.


0 commentaires

2
votes

ngModel est utilisé pour la liaison de propriété un ou deux sens. Vous avez raison de pouvoir l'utiliser pour obtenir la valeur actuelle d'un élément.

Le décorateur @ViewChild est différent en ce qu'il est utilisé pour obtenir la première instance correspondante d'un composant ou d'une directive. Bien que vous puissiez l'utiliser pour obtenir une valeur de ce composant, ce n'est pas limité à cela.


0 commentaires

4
votes

NgModel

NgModel est un moyen de liaison de données bidirectionnelle et peut être utilisé dans votre modèle et votre contrôleur et si la valeur est modifiée dans l'un, elle se reflétera dans l'autre. Une utilisation très courante serait avec une zone de saisie à la recherche, qui pourrait ressembler à ceci.

@ViewChild('reference')public myComponent; // type being the class of the child / element.

Qui se trouverait dans le contrôleur comme.

<my-custom-component #reference></my-custom-component>


0 commentaires