0

我有一个使用 Angular Js 的 chtml 页面,其中包含来自数据库的对象列表,但加载数据需要很长时间。如何仅加载 10 个对象并显示它们,然后继续加载数据并在 Angular Js 中显示其余数据????

4

1 回答 1

1

听起来您有很多数据要慢慢加载到前端,因此您不必等待。我能想到的唯一定期添加数据的方法是 setInterval。

关键是创建一个新变量

$scope.displayObjects = []

你可以像这样不断地追加

for(var x = currentIndex; x < currentIndex + step && x < $scope.objects.length; x++){
    $scope.displayObjects.push($scope.objects[x]);                        
}

然后只需设置一个间隔来连续调用它。您还需要使用

$scope.$apply() 

告诉 Angular 重新应用自己(http://docs.angularjs.org/api/ng.$ro​​otScope.Scope#$apply)。

http://jsfiddle.net/A9uND/20/您可以通过 step 变量调整每一步的加载量。

下次包括一个 jsfiddle(或类似的东西),这样更容易为您提供帮助。

虽然上述方法可行,但我建议跟踪您可以看到多少,然后只加载相关的。当您滚动时,沿途添加更多内容。

于 2012-12-07T20:01:50.793 回答