Maison > interface Web > js tutoriel > Comprendre la liaison bidirectionnelle des données angulaires_AngularJS

Comprendre la liaison bidirectionnelle des données angulaires_AngularJS

WBOY
Libérer: 2016-05-16 15:20:35
original
1078 Les gens l'ont consulté

AngularJS est un excellent framework JS frontal qui a été utilisé dans de nombreux produits Google. AngularJS possède de nombreuses fonctionnalités, dont les plus essentielles sont : MVVM, modularisation, liaison de données bidirectionnelle automatisée, balises sémantiques, injection de dépendances, etc.

1. Qu'est-ce que la liaison de données bidirectionnelle
Angular implémente un mécanisme de liaison bidirectionnelle. La liaison dite bidirectionnelle ne consiste rien d'autre que le fait que les opérations de l'interface peuvent être reflétées dans les données en temps réel et que les modifications apportées aux données peuvent être affichées dans l'interface en temps réel.

L'exemple le plus simple est le suivant :

<div ng-controller="CounterCtrl">
  <span ng-bind="counter"></span>
  <button ng-click="counter++">increase</button>
</div>function CounterCtrl($scope) {
  $scope.counter = 1;
}
Copier après la connexion

Cet exemple est très simple. Chaque fois que vous cliquez sur le bouton, le nombre sur l'interface augmente de un.

2. Principe de la liaison de données bidirectionnelle
1. Compréhension profonde
Permet aux utilisateurs de contrôler l'ordre d'affichage des listes de téléphones mobiles. Le tri dynamique peut être implémenté en ajoutant une nouvelle propriété de modèle, en l'intégrant à un itérateur et en laissant la liaison de données faire le reste.

Modèle (app/index.html)

Search: <input ng-model="query">
Sort by:
<select ng-model="orderProp">
 <option value="name">Alphabetical</option>
 <option value="age">Newest</option>
</select>


<ul class="phones">
 <li ng-repeat="phone in phones | filter:query | orderBy:orderProp">
  {{phone.name}}
  <p>{{phone.snippet}}</p>
 </li>
</ul>

Copier après la connexion

Les modifications suivantes ont été apportées dans index.html :

Tout d'abord, une balise