我希望能够定义我的网页的一部分只能根据指令的结果(只返回true或false)来查看。
<div ng-show="?">... /<div>
//Determines if anything is being loaded
app.directive('isloading', function ($http) {
return {
restrict: 'AE',
link: function (scope, element, attr) {
scope.isLoading = function () {
if ($http.pendingRequests.length > 0) {
return true;
} else {
return false;
}
};
}
};
});
我知道这可以通过使用单独的服务来完成,但有一种直接的方式我可以这样做吗?
更新
通过在加载某些内容时基本上创建我自己的ng-show指令来实现此目的。我相信它可以更精致,但这是我目前的解决方案 -
app.directive('isloading', function ($http) {
return {
replace: true,
restrict: 'A',
link: function (scope, element, attr) {
scope.$watch(function () {
if ($http.pendingRequests.length > 0) {
element.css('display', 'none');
} else {
element.css('display', '');
}
});
}
};
});