Points clés pour l'apprentissage
• Pourquoi utiliser les commandes
• Créer des directives personnalisées
• Travailler avec JQLite
1. Pourquoi utiliser les commandes personnalisées
NG a de nombreuses directives personnalisées intégrées, mais ils ne répondent parfois pas à vos besoins, ce qui nous oblige à créer des propriétés personnalisées.
2. Commandes personnalisées
Ensuite, faisons un petit cas. Lorsque la souris clique pour augmenter le prix, les éléments de la liste augmenteront automatiquement. Bien sûr, la liste est également automatiquement ajoutée par le biais d'instructions. C'est un div vide
<! Doctype> <! - Utilisez le module -> <html ng-app = "exampleApp"> <éadf> <Title> Angluar Test </ title> <meta charset = "utf-8" /> <link rel = "stylesheet" type = "text / css" href = "css / bootstrap.min.css"> <lien roll = "csshet" type = "text / css" href = "css / bootstrap-theme.min.css"> </ head> <body> <dlv ng-controller = "defaultctrl"> <div> <h3> Produits </h3> </div> <v> <v> <! - Cliquez pour augmenter le prix et les augmentations de prix -> <bouton type = "Button" Ng-C-Click = "AUGMENTATION ()" Button Type = "Button" Ng-C-CLK = "AUGLUPS () () Button (Button Type =" Button "NG-C-CLIK =" AUGLASTIQUE () () Button = "Button" Ng-C-CLK = "AUGMENT Augmente </futton> </div> <div> <! - Afficher les données des produits dans une liste non ordonnée -> <! - List-Property = "Price | Currency" List Item Units localisé -> <div UnorderList = "Products" List-Property = "Price | Currency"> </div> </div> </div> </dlv> <Script Type = "Text / Javascript" src = "js / angular.min.js"> </ script> <script type = "text / javascript"> angular.module ("exampleApp", []) .directive ("UnorderList", function () {// scope Scope // élément appliquer l'élément de la directive // utilisation des attributs de l'élément de l'élément de la fonction directive (scope, prénat) {Attors { attribut [UnOrderList '] obtient la valeur de l'attribut UnOrderList, voici les produits // obtiennent la valeur du modèle de données, voici Scope.Products var data = scope [attrs [' UnOrderList ']; Elements (UL); <li> élément de balise var li = angular.Element ("<li>"); (NewValue, OldValue) {// Mettez à jour la valeur de Li.Text (NewValue);})}) (i); }, {nom: "bananes", catégorie: "fruit", prix: 2.42, expiration: 7}, {nom: "Pears", catégorie: "fruit", prix: 2.02, expiry: 6}]; $ scope.products [i] .price ++;Analyse:
Étape 1: Créez un contrôleur, ajoutez des produits du modèle de données et la méthode incrémentPrices ()
Étape 2: Personnalisez la balise UnOrderList. La fonction de cette balise est: afficher sa valeur dans une liste non ordonnée via le modèle de données portée.
Partie 3: Et lorsque le bouton de balisage est cliqué, les valeurs de la liste non ordonnée augmenteront en séquence
3. Travaillez avec JQLite
NG a JQLite intégré, qui est une version plus petite de jQuery
<! Doctype> <! - Utilisez le module -> <html ng-app = "exampleApp"> <éadf> <Title> Angluar Test </ title> <meta charset = "utf-8" /> <link rel = "stylesheet" type = "text / css" href = "css / bootstrap.min.css"> <lien roll = "csshet" Type = "Text / CSS" HREF = "CSS / Bootstrap-Theme.min.css"> </ Head> <Body> <dlv> <! - Utilisez la directive personnalisée -> <ol Domestic-Directive> <li> Pommes </li> <ul> <li> Bananas </li> <li> Perries </li> <li> <li> oranges </li> </l> </dlv> <script type = "text / javascrip Tous les lis sous l'élément, ici l'élément est l'appelant <l> var items = element.find ("li"); (items.eq (i) .Text () == "oranges") {items.eq (i) .css ("couleur", "rouge"); items.css ("couleur"));Analyse:
Étape 1: Personnalisez le contrôleur et définissez les noms du modèle de données
Étape 2: Personnalisez la commande, la fonction consiste à découvrir tous les LIS sous les éléments utilisés par la commande et à attribuer différentes valeurs à différentes couleurs de la police.
Étape 3: Appelez et utilisez des instructions dans la vue
Ce qui précède est tout le contenu de cet article. J'espère que cela sera utile à l'apprentissage de tous et j'espère que tout le monde soutiendra davantage Wulin.com.