用于angularJS的Ajax微调器

时间:2014-02-06 19:22:22

标签: javascript angularjs

我试图在每个http调用的angularJS应用程序之一上显示ajax微调器,所以这意味着每当我们尝试加载ngGrid或Dropdown等时,就会有一个微调器,当加载完成时它将被删除,我是新的角度不确定我们怎么能实现它,请给出任何参考。

由于

2 个答案:

答案 0 :(得分:1)

尝试使用ngSwitch,你将交换两个模板,所以基本上它会是这样的:

<div ng-switch on="loaded">
  <div ng-switch-when="true">
      <!--your loaded content goes here-->
  </div>
  <div ng-switch-default>
      <!--your spinner goes here-->
  </div>
</div>

在你的控制器中你可以这样做:

$scope.loadSomething = function(){
    $scope.loaded = false;
    $http.get(url).success(function(data){
        $scope.loaded = true;
    });
};

答案 1 :(得分:0)

在调用$http.foo之前,您可以编写一些普通的旧JavaScript来向DIV或TABLE添加类名,然后在成功/失败回调中删除该类名。

CSS:

.loading {
    background: transparent url(path/to/loading.gif) no-repeat scroll 50% 50%;
}

.loading * {
    visibility: hidden;
}