Beruflich Dokumente
Kultur Dokumente
A. DAAIF
ENSET Mohammedia Universit Hassan II Casablanca
AngularJS en trois pas
Introduction
Applications SPA
Concepts implments dans ng
Commencer avec AngularJS
Premier pas
Directives
Liaison de donnes
Filtres
Deuxime pas
Vues
Contrleurs
Scope (inclus le modle)
Troisime pas
Modules
Routes
Services
0 Applications SPA
0 Applications SPA
Gestion du cache
Liaison de donnes
AngularJS propose une approche intelligente pour
relever ces dfis.
0 Concepts et fonctionnalits de NG
Data
MVC Routing View
Binding
Dependency
Service History Animation
Injection
0 Getting started
Tlcharger AngularJS.
0 Getting started
Crer page html index.html .
<!DOCTYPE html>
<html lang="fr" ng-app>
<head>
<meta charset="UTF-8">
<title>Test AngularJS</title>
<script src="js/angular.js"></script>
</head>
Attacher AngularJS
<body>
<input type="text" ng-model="nom" placeholder="Votre nom">
<hr>
Bonjour : {{nom}}
</body>
</html>
1 Directives et Liaison de donnes
Une Directive ajoute des fonctionnalits au HTML
Un Template value une expression.
Directive
<!DOCTYPE html>
<html lang="fr" ng-app>
<head>
<meta charset="UTF-8">
<title>Test AngularJS</title>
<script src="js/angular.js"></script>
Directive
</head>
<body>
<input type="text" ng-model="nom" placeholder="Votre nom">
<hr>
Bonjour : {{nom}}
</body>
</html>
Template et Liaison de donne
1 Directives et Liaison de donnes
Extrait de la
documentation
de AngularJS
[
{
"state": "Alabama",
"cities": ["Birmingham", "Mobile", "Montgomery", "Huntsville"
{
"state": "Alaska",
"cities": ["Anchorage", "Juneau"]
},
<ol>
<li ng-repeat="st in states | orderBy:st.state| limitTo:10">
{{st.state | uppercase}}
<ul>
<li ng-repeat="city in st.cities">
{{city}}
</li>
</ul>
</li>
</ol>
3 - Modules
Un module est un conteneur. Il permet dorganiser le code.
Configurations
Contrleurs
Le module myApp dpend des modules :
1. $ngRoute
Services
2. myModule
Ceux-ci seront injects automatiquement par
Directives AngularJS
Filtres
Module
Config
Route
La page index.html :
<html lang="fr" ng-app="myApp">
<head>
Attacher le script du module ngRoute
<meta charset="UTF-8">
<title>Test AngularJS</title>
<script src="js/angular.js"></script>
<script src="js/angular-route.js"></script>
</head>
<body ng-controller="statesCtrl">
<h2>USA States</h2> Lendroit o les vues partielles vont
safficher
<div ng-view></div>
<script> // et le reste
3 - Routes provider $routeProvider
Le contrleur :
app.controller('statesCtrl', function($scope, $http, $routeParams){
$scope.params = $routeParams;
$scope.states = getStates();
function getStates(){ // requete Ajax et affectation $scope.states }
$scope.getCities = function(state){
var states = $scope.states;
Requte Ajax pour
for(var i=0; i<states.length; i++){ rcuprer le tableau
if(states[i].state == state) des states
return states[i].cities;
}
Ligne 2 : Mise disposition des paramtres durl aux vues
}
dans la variable $scope.params .
});
3 Routes States / cities
Les vues :
<!-- states.html -->
Vues states.html
<ul>
<li ng-repeat="st in states | limitTo:10">
{{st.state}}
<a href="#/{{st.state}}/cities" style="float: right;">cities</a>
</li>
</ul>
Le Rsultat: