Quel est l'équivalent de jQuery ajax beforeSend dans Angularjs?
Je suis familier avec Jquery appel AJAX, qui a différents rappels comme beforeSend, succès, complet, etc.
C'est l'exemple de l'appel AJAX avec Jquery:
$.ajax({
url: 'register.php',
type: 'POST',
data: {name:name, email:email},
beforeSend: function() {
//show loading GIF
},
complete: function() {
//hide loading GIF
},
success: function(data) {
//parse response
}
});
Que je souhaite obtenir la même chose en utilisant AngularJS.
Est-il un rappel comme beforeSend pour AngularJS requête AJAX ?
C'est mon code, mais je ne suis pas sûr de l'endroit où puis-je utiliser un callback comme beforeSend (afin que je puisse afficher un chargement d'image GIF) dans mon code:
$http.post('register.php', {'name': $scope.name, 'email': $scope.email})
.success(function(data, status, headers, config) {
if (data != '') {
}
});
OriginalL'auteur shasi kanth | 2014-03-03
Vous devez vous connecter pour publier un commentaire.
Par défaut Angulaire ne fournit pas de beforeSend et complète, mais vous pouvez mettre en œuvre en utilisant des intercepteurs. Voici mon oeuvre:
Ensuite, vous devez enregistrer votre intercepteur comme ceci:
Après ce code, vous pouvez l'utiliser comme ceci:
OriginalL'auteur
Vous pouvez utiliser
interceptors
. De recherche pour le motinterceptor
dans l'angle $http documentationIci est un bon Violon Exemple afficher un gif de chargement avant l'appel ajax est envoyée.
MODIFIER
Comme Satpal commenté,
$httpProvider.responseInterceptors
utilisé dans le Violon estdeprecated
. Vous devez utiliser$httpProvider.interceptors
à la place.$httpProvider.responseInterceptors
sont OBSOLÈTES. Vous devez fournir exemple avec$httpProvider.interceptors
OriginalL'auteur