====== AngularJS : les concepts ====== Important de comprendre les concepts. Cette page est WIP, comme mon cerveau. ===== Expressions ===== ===== Directive ===== * Manipulation du DOM * Morceau de html templaté et donc facile à injecter et réutiliser * Plusieurs écritures possibles * Déclaration d'attribut Cliquez moi * Élément personnalisé Cliquez moi * Classe Cliquez moi * Commentaire * Attributs * restrict: restriction d'usage. 'A' pour Attribute, 'E' pour Element, 'C' pour Class, 'M' pour commentaire. Peuvent être combinés. * replace: booleén. Permet de remplacer le contenu de l'élément. * transclude: Récupère le contenu de l'élément et l'injecte dans l'élément produit par la directive. * template: comme son nom l'indique. * templateUrl: la même chose que template, mais soous forme d'URL pointant vers une ressource ===== Data binding ===== ===== Filter ===== ===== Scope ===== ===== Partial view ===== ===== Module ===== ===== Dependency Injection ===== ===== Route ===== ===== Controller ===== * Manipulation des datas, par exemple implémentation d'appel à des APIs REST permettant de fetcher des dats depuis un serveur. * Pas de manipulation du DOM ici. Faire ça via des [[angular:concepts#directive|directives]] * Créer les contrôleurs en faisant en sorte qu'ils soient restreints à l'application dont ils sont membres var monApplication = angular.module('monApplication', []); monApplication.controller('MonControleur', function ($scope) { // Faire des trucs }); ===== Scope ===== Assure le lien entre un contrôleur et la vue à laquelle le contrôleur est associé. le __Scope__ est un attribut du contrôleur et lui permet d'ajouter des données ou des fonctions dans son contexte d'exécution. Ces ajouts sont fait au sein de l'élément du DOM dans lequel le contrôleur est exécuté. ===== Watch ===== ===== Service ===== ===== Factory ===== ===== Provider =====