我是AngularJS的新手。我正在尝试向web服务发出请求。我想实现一个进度条,告诉我这个请求的百分比。也许有人有一个基本的例子可以指导我。如果有人能帮助我,我将不胜感激。我会再解释一点。我有这样的要求。我想让你给我看从开始到结束的百分比。我是新来的,所以我想找一些简单但实用的东西。
$http({
method: 'GET',
url: "www.examplejson.com/example",
timeout:5000
}).success(function(data){
console.log("complete!");
}).error(function(response,status,headers,config) {
console.log("error");
});
无法知道简单HTTP请求的进度(百分比)。当你的请求离开客户端时,你会从服务器上听到的第一件事就是响应,这也意味着他已经完成了。因此,除非你正在流式传输一些东西,并且你可以逐渐将状态从服务器发送到客户端,否则唯一的选择是:
- 估计请求将花费的时间,使用该值来构建进度条(当然,进度条只是实际等待时间的近似值)
- 只需使用旋转器
我建议采用后一种选择。
有一个可爱的项目叫做Angular Loading Bar。
http://chieffancypants.github.io/angular-loading-bar/
它非常容易使用,当你提出请求时,它会在地址栏的正下方显示一个进度栏。试试看!有了它,您可以看到您提出的请求的进度。
有了角度加载条/非常简单:只需下载
bower install angular-loading-bar
并将其添加到您的app.js依赖项中:
angular.module('myApp', ['angular-loading-bar'])
你就完了。。。它将在您的innerHtml顶部显示进度条。。。它不仅适用于$http
,而且适用于任何异步调用,因为它可以作为中间件拦截器。。。
试试这个AngularJS 的精简、站点范围的进度条
此处