gpt4 book ai didi

javascript - ng-Grid 分页不起作用-AngularJS

转载 作者:行者123 更新时间:2023-11-30 05:42:24 25 4
gpt4 key购买 nike

HTML:

<div class="grid-style" data-ng-grid="groupGrid">
</div>

Javascript:

appRoot.controller('GroupController', function ($scope, $location, $resource, $http) {

var groupResource = $resource('/api/group', {}, { update: { method: 'PUT' }, add: { method: 'POST'} });
$scope.groupList = [];

groupResource.query(function (data) {
$scope.groupList.length = 0;
angular.forEach(data, function (groupData) {
$scope.groupList.push(groupData);
});
});

$scope.totalServerItems = 0;

$scope.pagingOptions = {
pageSizes: [4, 8, 12, 16],
pageSize: 250,
currentPage: 1
};
$scope.setPagingData = function (data, page, pageSize) {
var pagedData = data.slice((page - 1) * pageSize, page * pageSize);
$scope.groupList = pagedData;
$scope.totalServerItems = data.length;
$scope.currentPage = page;
if (!$scope.$$phase) {
$scope.$apply();
}
};

$scope.getPagedDataAsync = function (pageSize, page, searchText) {
setTimeout(function () {
var data;
if (searchText) {
var ft = searchText.toLowerCase();
$http.get('/api/group').success(function (largeLoad) {
data = largeLoad.filter(function (item) {
return JSON.stringify(item).toLowerCase().indexOf(ft) != -1;
});
$scope.setPagingData(data, page, pageSize);
});
} else {
$http.get('/api/group').success(function (largeLoad) {
$scope.setPagingData(largeLoad, page, pageSize);
});
}
}, 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);

$scope.selectedGroups = [];

$scope.groupGrid = {
data: 'groupList',
multiSelect: false,
selectedItems: $scope.selectedGroups,
enableColumnResize: false,
enablePaging: true,
showFooter: true,
totalServerItems: 'totalServerItems',
pagingOptions: $scope.pagingOptions,
columnDefs: [
{ field: 'groupName', displayName: 'Group Name', width: '25%' }
],
};
});

我的问题 - 分页不起作用,如- 不显示当前页码。- 当我更改页面大小时(比如 4),网格中的项目数不会改变(仍然是 16 - 我实际拥有的项目总数)。- 只有在单击下一页按钮两次后,网格中的项目数才会发生变化。

最佳答案

您的“pagingOptions.currentPage”输入是否无效?

https://github.com/angular-ui/ng-grid/issues/598

你只需要将 ng-grid 更新到最新的东西

关于javascript - ng-Grid 分页不起作用-AngularJS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20019010/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com