相关疑难解决方法(0)

Angular HttpPromise:`success` /`error`方法和`then`参数之间的区别

根据AngularJS doc,调用$http返回以下内容:

使用标准then方法和两个http特定方法返回promise对象:successerror.所述然后方法有两个参数一成功以及错误回调将与响应对象被调用.的成功错误的方法采取一个参数-一当请求成功或失败分别将被调用的函数.传递给这些函数的参数是传递给then方法的响应对象的析构表示.

除了response在一种情况下对象被解构的事实之外,我没有区别

  • 传递的成功/错误回调作为参数传递 promise.then
  • 回调作为promise 的promise.success/ promise.error方法的参数传递

有没有?这两种不同方式通过看似相同的回调有什么意义?

promise angularjs

177
推荐指数
5
解决办法
11万
查看次数

如何模拟一个有角度的$ http调用并返回一个行为类似$ http的promise对象

有没有办法返回一个模仿调用的HttpPromise(或类似的东西)$http?我想设置一个全局变量,指示是否发出了真正的HTTP请求,或者是否使用伪数据返回了假的HttpPromise对象.

例如,我有一个与此类似的服务:

angular
  .module('myservice')
  .factory('MyService', ['$http', function($http) {
      return {
       get : function(itemId) {
         if (isInTestingMode) {
           // return a promise obj that returns success and fake data
         }
         return $http.get("/myapp/items/" + itemId);
       }
    };
 } ]);
Run Code Online (Sandbox Code Playgroud)

在我的控制器中,我调用上述类似于此的服务:

        // Somewhere in my controller

        MyService.get($scope.itemId)
           .success(function(data) {
              $scope.item = data;
           })
           .error(function(data, status, headers, config) {
              $scope.notFound = true;
           });
Run Code Online (Sandbox Code Playgroud)

我试图改变控制器代码; 在我的"isInTestMode"中,我希望successerror链接仍然有效.是否有可能以HttpPromise我在服务中描述的方式伪造一个?


下面是上面的"MyService"修订版(一个片段),其中包含一个successerror在promise对象上.但是,我该如何执行该success方法?

        return { …
Run Code Online (Sandbox Code Playgroud)

angularjs angularjs-http angular-mock

19
推荐指数
2
解决办法
2万
查看次数

使用Parse服务的自定义拦截器angularjs应用程序

我试图用angularjs为我的服务器响应(PARSE)实现一个拦截器,我看到这个项目使用$ httpProvider来注册拦截器.

既然我的服务没有使用$ http服务(正在使用PARSE),有没有办法以与项目样本相同的清洁方式实现我的拦截器?

javascript angularjs parse-platform

13
推荐指数
1
解决办法
674
查看次数