Angularjs :Apprendre comment fonctionne ngChecked
-
11-12-2019 - |
Question
J'ai essayé de modifier l'exemple ng-checked afin que cliquer sur l'une des cases mette automatiquement à jour l'autre.
Cliquer sur A, puis sur B, puis à nouveau sur A ne fait pas ce à quoi je m'attends.
Quelle partie de la documentation dois-je consulter pour comprendre ce qui se passe ?
La solution
Pourquoi ne connectez-vous pas les deux cases au même modèle ?
<div ng-app>
A - Check me to check both:
<input type="checkbox" ng-model="master"><br/>
B - Check me to check both:
<input type="checkbox" ng-model="master">
</div>
http://jsfiddle.net/ev62U/133/
==================================================================================
Pour expliquer votre violon :
ng-checked
ne met pas à jour le modèle, il met uniquement à jour la vue (case à cocher), une fois l'expression modifiée.
Cliquez sur A :le master
est changé en true
, la case à cocher B surveille son ng-checked
et met donc également à jour la vue à vérifier.
Cliquez sur B :le master2
est changé en false
, la case à cocher A surveille son ng-checked
valeur et met donc à jour la vue pour qu'elle soit également décochée.
Cliquez sur A :le master
est réglé sur true
et ce n'est pas vraiment un changement puisque la valeur l'était déjà true
, cela ne déclenche donc pas la mise à jour de B.