angularjs - 如何将 Angular UI-Grid 与服务器端分页结合使用

标签 angularjs angular-ui-grid

我正在使用 AngularJs Ui-Grid.info要显示动态数据网格,我喜欢它,但现在我必须使用服务器端过滤和分页将其连接到包含 60,000 条记录的数据库表,并且该插件的分页选项似乎仅适用于客户端分页。

有没有人能够通过服务器端分页来实现这一点。有代码示例吗?

查看代码

<div class="gridContainer">
    <div id="grid1" ui-grid="gridOptions" class="grid" ui-grid-auto-resize ui-grid-pagination></div>
</div>

Controller 的一部分

$scope.gridOptions = {
    enableFiltering: true,
    enableColumnResize: true,
    paginationPageSizes: [25, 50, 75],
    paginationPageSize: 25,
    columnDefs: [
        {
            //field: 'Id', width: 60, displayName: 'Id', enableFiltering: false
            field: 'id', width: 60, displayName: 'Id', enableFiltering: false
        },
        {
            field: 'skill_count',
        },
        {
            field: 'name'
        } 
    ]
};

$scope.loadData = function () {
    skillService.getUnprovisioned(function (data) {
        $scope.gridOptions.data = data;
    });
};

最佳答案

API 中提供了服务器端分页选项。

http://ui-grid.info/docs/#!/api/ui.grid.pagination.api:GridOptions -> useExternalPagination

这是服务器端分页和排序的示例:

http://plnkr.co/edit/UttxPkXG8fYQDX85fnyZ?p=preview

在上面的示例中,请引用下面给出的代码块,该代码块执行服务器端分页:

gridApi.pagination.on.paginationChanged($scope, function (newPage, pageSize) {
    paginationOptions.pageNumber = newPage;
    paginationOptions.pageSize = pageSize;
    getPage();
});

关于angularjs - 如何将 Angular UI-Grid 与服务器端分页结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29092831/

相关文章:

javascript - 我们如何在 JavaScript 中为键动态变化的 JSON 形成 mongoDB 模式对象?

javascript - Angularjs 中字母数字的正则表达式

javascript - UI 网格 - 水平滚动不适用于大量数据

javascript - 当我引入 ui-grid 时,Angular 应用程序崩溃了

javascript - UI-grid 设置列顺序

AngularJS 中的 JavaScript 变量声明

javascript - 使用 Angular 将数组复制到对象中的对象

ios - Cordova 无法处理的具有线性渐变的 SVG - iOS

javascript - 如何在点击并按住时在 ui-grid 中移动列?

angularjs - Angular UI Grid,通过模板向行单元格添加按钮