4

我正在尝试将使用 jQuery 编写的模块转换为 AngularJS。

我有一个ajaxSuccessajaxError处理程序,它在全局级别进行 ajax 响应处理。它负责在所有 ajax 请求中显示成功/失败消息。

在 AngularJS 中是否有等价物?

我已经完成了该$http服务,但没有找到任何解决方案。

4

1 回答 1

3

您可以使用拦截器来实现这一点。例子:

    myapp.config(function($httpProvider) {
      var myInterceptor = ['$rootScope','$q', function(scope, $q) {

        function onSuccess(response) {
          return response;
        }

        function onError(response) {
          return $q.reject(response);
        }

        return function(promise) {
          return promise.then(onSuccess, onError);
        };

      }];

      $httpProvider.responseInterceptors.push(myInterceptor);
    });

这将捕获您所有的角度 $http 和 $resource 调用并调用 onError 或 onSuccess ,然后再继续您的自定义回调。

于 2013-02-21T13:52:21.397 回答