我正在尝试使用 ngMockE2E 作为替代来模拟 AngularJS(1.3.8)-app 的后端,直到编写完后端代码。
我正在使用已经存在的服务,这些服务也可以查询其他数据,但是它们会返回一个承诺。我知道 ngMockE2E 应该是同步的,但是我想看看是否有办法先异步进行。
环顾网络,我发现了这一点,并将与模拟相关的代码放入其自己的单独模块中,以查看这种方法是否有效。
$httpBackend.whenAsync('projects/').respond(function (promise, headers, status) {
var deferred = $q.defer();
_getProjectIndex().then(function (result) {
deferred.resolve(result);
},
function (statusCode) {
console.log(statusCode);
deferred.reject(statusCode);
});
return deferred.promise;
});
当我尝试运行 $httpBackend.whenAsync() 时,请求似乎是 404。使用 $httpBackend.whenGET() 检查相同的请求,我收到了包含我请求的数据的承诺。
我究竟做错了什么?