2016-02-05 50 views
0

我试图得到以下Angular-Spinner在我的项目工作:角JS加载问题

我试图把它与http.get调用工作。到目前为止,我有:在控制器

$scope.loading = true; 
$http.get('js/data/test.json').success(function(results){ 
$scope.section = results.section; 
$scope.loading = false; 

}); 

在视图:

<span us-spinner="{radius:15, width:4, length: 8}" ng-show="loading"></span> 
<div ng-repeat="post in section" class="inner"></div> 

目前加载显示速度非常快,我想知道这是使用它的正确方法?在所有数据加载并显示微调器之前,我怎么才能稍微延迟它。有任何想法吗?

回答

1

你可以尝试添加超时:

$scope.loading = true; 

setTimeout(function() { 
    $http.get('js/data/test.json').success(function(results){ 
     $scope.section = results.section; 
     $scope.loading = false; 
    } 
}, 5000); 

这将试图检索从JSON文件中的数据之前,等待5秒钟。编辑: 使用Angular的$ timeout服务。不要忘记把它包含在你的控制器中! (谢谢Walfrat)

$timeout(function() { 
    $http.get('js/data/test.json').success(function(results){ 
     $scope.section = results.section; 
     $scope.loading = false; 
    } 
}, 5000); 
+1

更好:使用$ timeout的角度。 – Walfrat

+0

当然,没有真正原因推迟数据加载5秒是最好的。 – deceze

+0

@ Walfrat,这将如何与上面的代码一起工作。 – rob