用于子/可扩展网格的ui-grid自定义分页

时间:2016-04-29 18:35:44

标签: angularjs pagination grid angular-ui-grid

我正在使用新的UI网格,并且需要为子网格和父网格都设置自定义分页逻辑。

自定义分页有一个指令,当与主网格一起放置时,这种方法很有效。该指令有一些分页方法可以为网格设置数据。

但是当这个指令放在expandablegrid模板中时,我想在扩展主父网格后访问指令方法。但我无法访问这些方法

paginator指令:

app.directive('paginator', ["$parse", function ($parse) {
    return {
        restrict: 'E',
        templateUrl: "..pagination.htm",
        scope: {
            datasource: "="
        },
        controller: ['$scope', function (scope) {
            scope.datasource.computePageNumbers = function () {
                //pagination logic
            }
        }
        ]
    }
}]);

expandableGrid.html

<div class="row">
        <div class="col-sm-12">
            <div ui-grid="row.entity.subGridOptions" ui-grid-pagination class="grid"></div>
            <paginator datasource="row.entity.childPagination" ></paginator>
        </div>
   </div>

在subGridOptions中设置值

$scope.paginationData = {};
$scope.gridOptions.data[i].childPagination=paginationData;

父网格行扩展代码。

这里在rowselection中我需要调用computePageNumbers并在row.Entity.data中设置数据,该行设置子网格的数据。 但我无法调用computePageNumbers。如何使它工作? 我可能没有详细解释,但如果有人可以提供帮助,对我或任何其他替代方案都有帮助。

gridApi.selection.on.rowSelectionChanged($scope, function (row) {
               gridApi.expandable.toggleRowExpansion(row.entity)

        });

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

0 个答案:

没有答案