$http.get('resturl').success(function (data) { //makes a rest call here
$scope.myData = data;
});
只有在请求完成后才会在网格中加载数据。我有非常大的数据,所以这使得用户等待2分钟-3分钟来加载网格。有没有办法快速渲染大量数据?花费大量的时间来渲染大型json数据
$http.get('resturl').success(function (data) { //makes a rest call here
$scope.myData = data;
});
只有在请求完成后才会在网格中加载数据。我有非常大的数据,所以这使得用户等待2分钟-3分钟来加载网格。有没有办法快速渲染大量数据?花费大量的时间来渲染大型json数据
在服务器端为大数据集使用分页数据,并使用分页网格将其显示给用户。
在这个问题上,你有分页nggrid的example
使用分页没有帮助。当我改变页面时,会再次发出请求,并且再次需要时间来获取数据。 – user2515138
此“分页”请求将仅提取要显示在网格的单个页面中的所需数据。 –
单向绑定使事情更快使用::
看到 Simple One way binding for ng-repeat?,可以减少你的数据吗?还看看分页?
是您的服务器速度慢,我发现,一旦绑定完成在定时器做这样的事情
$http.get('resturl').success(function (data) { //makes a rest call here
console.log("Request Complete");
$scope.myData = data;
$timeout(function() { console.log("Binding complete"); });
});
日志将得到执行。
了解您的网格的内容也将有所帮助。
内容是文字...分页没有帮助。 – user2515138
$scope.pagingOptions = {
pageSizes: [5, 7,10, 20],
pageSize: 7,
currentPage: 1
};
$scope.setPagingData = function(data, page, pageSize)
{
var pagedData = data.slice((page - 1) * pageSize, page * pageSize);
$scope.myData = pagedData;
$scope.totalServerItems = data.length;
if (!$scope.$$phase) {
$scope.$apply();
}
};
$scope.getPagedDataAsync = function(pageSize, page, searchText) {
setTimeout(function() {
var data;
if (searchText) {
var ft = searchText.toLowerCase();
$http.get('largeLoad.json').success(function(largeLoad) {
data = largeLoad.filter(function(item) {
return JSON.stringify(item).toLowerCase().indexOf(ft) != -1;
});
$scope.setPagingData(data, page, pageSize);
});
}
else {
$http.get('largeLoad.json').success(function(largeLoad) {
$scope.setPagingData(largeLoad, page, pageSize);
var myData = $.parseJSON(JSON.parse(largeLoad));
$scope.myData = myData;
});
}
}, 100);
};
$scope.getPagedDataAsync($scope.pagingOptions.pageSize, $scope.pagingOptions.currentPage);
$scope.$watch('pagingOptions', function(newVal, oldVal) {
if (newVal !== oldVal && newVal.currentPage !== oldVal.currentPage) {
$scope.getPagedDataAsync($scope.pagingOptions.pageSize, $scope.pagingOptions.currentPage);
}
}, true);
可能是这段代码可以帮助您提供快速加载JSON数据的分页。
它看起来像你有问题在服务器端 –
使用分页http://angular-ui.github.io/ng-grid/:服务器端分页示例 –
这似乎是你的问题是你的网格(或者也许你的服务器的响应速度太慢) - 无论如何,很难知道你提供的信息。 – Sacho