【发布时间】:2014-08-12 03:06:00
【问题描述】:
使用 Angular.js
数据库有大约 8000 个结果。加载表格大约需要 3-10 秒,具体取决于 Internet 连接。
所有结果都已加载。有没有办法限制说 1000 个结果,但搜索功能全部加载?还是 Angular 有服务器端加载?
app.js 是相当默认的:
var app = angular.module('myApp', ['ui.bootstrap']);
app.filter('startFrom', function() {
return function(input, start) {
if(input) {
start = +start; //parse to int
return input.slice(start);
}
return [];
}
});
app.controller('customersCrtl', function ($scope, $http, $timeout) {
$http.get('submit/getJobs.php').success(function(data){
$scope.list = data;
$scope.currentPage = 1; //current page
$scope.entryLimit = 100; //max no of items to display in a page
$scope.filteredItems = $scope.list.length; //Initially for no filter
$scope.totalItems = $scope.list.length;
});
$scope.setPage = function(pageNo) {
$scope.currentPage = pageNo;
};
$scope.filter = function() {
$timeout(function() {
$scope.filteredItems = $scope.filtered.length;
}, 10);
};
$scope.sort_by = function(predicate) {
$scope.predicate = predicate;
$scope.reverse = !$scope.reverse;
};
});
表格行是:
<tr ng-repeat="data in filtered = (list | filter:search | orderBy : predicate :reverse) | startFrom:(currentPage-1)*entryLimit | limitTo:entryLimit">
请原谅我在这方面的无知。如果您需要更多代码或其他内容,请告诉我。
【问题讨论】:
标签: jquery angularjs performance