我试图创建打字稿指令,它会继续监视未决$资源请求。 我想只有一个指令,因为这将与格index.html中可用于显示加载进度的属性。 下面是我对指令代码。
module app.common.directives {
interface IProgressbarScope extends ng.IScope {
value: number;
isLoading: any;
showEl: any;
}
class Progressbar implements ng.IDirective {
static $inject = ['$http'];
static instance(): ng.IDirective {
return new Progressbar;
}
//transclude = true;
restrict = 'A';
replace = true;
link = function (scope: IProgressbarScope, elements: ng.IAugmentedJQuery, attrs: ng.IAttributes, $http: ng.IHttpService) {
debugger;
scope.isLoading = function () {
return $http.pendingRequests.length > 0;
};
scope.$watch(scope.isLoading, function (v) {
debugger
if (v) {
elements.addClass("hidediv")
} else {
elements.removeClass("hidediv");
}
});
}
}
angular.module('app')
.directive('progressbar', Progressbar.instance);
}
index.html中,它被用作以下:
<div progressbar id="myProcess" name="myProcess">
// loading image
</div>
但是在指令,$ HTTP永远是不确定的。 请注意,我并没有直接使用$ HTTP。 我制作服务器端API请求使用$资源服务。