angular $httpBackend.when 模拟 - 延迟响应不是全局的
angular $httpBackend.when mocks - delay response NOT globally
我发现 this article 如何在使用 $httpBackend 模拟数据时创建人为的服务器延迟。
有什么办法可以在每个模拟的基础上使用它吗?也许是这样的:
$httpBackend
.whenGET(/\/my\/endpoint$/)
.respond(data, 2000);
或
$httpBackend
.whenGET(/\/my\/endpoint$/)
.withDelay(2000)
.respond(data);
如果您使用 bower
bower install angular-mocke2e-maydelay
在index.html
<script src="/bower_components/angular-mocks/angular-mocks.js"> </script>
<script src="/bower_components/angular-mocke2e-maydelay/angular-mocke2e-maydelay.js"></script>
将此添加到您的应用程序
angular.module('app', ['ngMockE2E', 'mayDelay'])
在测试中,未模拟的 $httpBackend
可以如下使用来延迟响应。
$httpBackend.whenGET('/foo.json').respond({foo:"bar"}, 3000); //delay 3s
$httpBackend.whenPOST('/bar',{foo:"bar"}).respond(200, "succeed", 5000); //delay 5s
此功能请求已发布在 angularjs repo
我发现 this article 如何在使用 $httpBackend 模拟数据时创建人为的服务器延迟。
有什么办法可以在每个模拟的基础上使用它吗?也许是这样的:
$httpBackend
.whenGET(/\/my\/endpoint$/)
.respond(data, 2000);
或
$httpBackend
.whenGET(/\/my\/endpoint$/)
.withDelay(2000)
.respond(data);
如果您使用 bower
bower install angular-mocke2e-maydelay
在index.html
<script src="/bower_components/angular-mocks/angular-mocks.js"> </script>
<script src="/bower_components/angular-mocke2e-maydelay/angular-mocke2e-maydelay.js"></script>
将此添加到您的应用程序
angular.module('app', ['ngMockE2E', 'mayDelay'])
在测试中,未模拟的 $httpBackend
可以如下使用来延迟响应。
$httpBackend.whenGET('/foo.json').respond({foo:"bar"}, 3000); //delay 3s
$httpBackend.whenPOST('/bar',{foo:"bar"}).respond(200, "succeed", 5000); //delay 5s
此功能请求已发布在 angularjs repo