AngularJS ng-repeat加载状态

时间:2014-03-23 21:47:49

标签: javascript angularjs angularjs-directive angularjs-ng-repeat ng-repeat

我正在使用AngularJS,使用ng-repeat来呈现属性列表列表,这些列表是通过json获取的。我也对列表进行了分页,因此当您单击第2页时,应用程序会进行JSON调用,获取新的列表数据,然后通过ng-repeat重新呈现。

我的问题是当ng-repeat重新加载/重新渲染时如何捕获,以便我可以显示加载gif?

$scope.listings = [ { 'title':'listing 1' },{ 'title':'listing 2' }, etc.. ]; 

<div class="listing" ng-repeat="listing in listings">
     <img src="{{listing.img_url}}" />
     {{listing.title}}
</div>

// Listings are updated like this: 
//-------------------------------------------------------
jsonService.searchByPlaceName().success(function(data) {
     $scope.listings = data.response.listings;
});

1 个答案:

答案 0 :(得分:4)

当调用searchByPlaceName方法时,您可以将一个加载屏幕布尔值附加到rootscope,然后在成功回调中将其关闭。

html可能看起来像

<div class="loading" ng-if="loading">

其中loading boolean在searchByPlaceName方法中设置为true,在成功时关闭。