slam4:richclient:angularjs:services

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
slam4:richclient:angularjs:services [2015/01/13 17:25] jcheronslam4:richclient:angularjs:services [2019/08/31 14:21] (Version actuelle) – modification externe 127.0.0.1
Ligne 15: Ligne 15:
   * Définition de paramètres (configuration) d'une application   * Définition de paramètres (configuration) d'une application
  
-===== Quelques services AngularJs =====+===== -- Quelques services AngularJs =====
  
 ^Nom ^Rôle ^ ^Nom ^Rôle ^
Ligne 28: Ligne 28:
 |**[[https://docs.angularjs.org/api/ng/service/$window|$window]]** |wrapper vers window | |**[[https://docs.angularjs.org/api/ng/service/$window|$window]]** |wrapper vers window |
  
-==== -- Injection d'un service ====+===== -- Injection d'un service ====
 + 
 +Exemple d'injection du service **$window** dans un contrôleur pour permettre une redirection de la page vers une autre URL.\\ 
 +voir [[slam4:richclient:angularjs:elements#injection_de_dependance_dependency_injection]] 
 + 
 +<sxh javascript> 
 +angular.module('myApp').controller('GotoController', [ '$scope','$window',function($scope,win) { 
 + $scope.location="http://www.google.fr"; 
 + $scope.go=function(){win.location=$scope.location;}; 
 +} ]); 
 + 
 +</sxh> 
 + 
 + 
 +===== -- $http service ===== 
 +Le service **$http** (ng module) permet de faire des requêtes HTTP vers un serveur, via l'objet [[https://developer.mozilla.org/en/xmlhttprequest|XmlHttpRequest]] du navigateur ou via [[http://en.wikipedia.org/wiki/JSONP|JSONP]]. 
 + 
 +==== -- Usage classique ==== 
 + 
 +<sxh javascript> 
 +// Exemple de get : 
 +$http.get('/someUrl'). 
 +  success(function(data, status, headers, config) { 
 +    // Fonction de rappel appelée de manière asynchrone 
 +    // quand la réponse est reçue 
 +  }). 
 +  error(function(data, status, headers, config) { 
 +    // Appelé de manière asynchrone en cas d'erreur 
 +    // ou si le serveur retourne une réponse avec un statut d'erreur. 
 +  }); 
 +</sxh> 
 +<sxh javascript> 
 +// Exemple de post avec passage de données : 
 +$http.post('/someUrl', {msg:'hello word!'}). 
 +  success(function(data, status, headers, config) { 
 +    // Fonction de rappel appelée de manière asynchrone 
 +    // quand la réponse est reçue 
 +  }). 
 +  error(function(data, status, headers, config) { 
 +    // Appelé de manière asynchrone en cas d'erreur 
 +    // ou si le serveur retourne une réponse avec un statut d'erreur. 
 +  }); 
 +</sxh> 
 + 
 +==== -- Raccourcis ==== 
 + 
 +  * [[https://docs.angularjs.org/api/ng/service/$http#get|$http.get]] 
 +  * $http.head 
 +  * $http.post 
 +  * $http.put 
 +  * $http.delete 
 +  * $http.jsonp 
 +  * $http.patch 
 + 
 + 
 +<sxh javascript> 
 +$http.get('/someUrl').success(successCallback); 
 +$http.post('/someUrl', data).success(successCallback); 
 +</sxh> 
 + 
 + 
 +===== -- $q service ===== 
 +Le service **$q** (ng module) permet d'exécuter des fonctions de manière asynchrone et utilise leurs valeurs de retour ou d'erreur quand l'exécution est terminée.
  
  • slam4/richclient/angularjs/services.1421166329.txt.gz
  • Dernière modification : il y a 6 ans
  • (modification externe)