网格初始化时如何按列排序table?
How to sort table by column when grid initialize?
我在我的项目中使用 ui-grid。
这是 html 中 table 的声明:
<div id="grid1" ui-grid="gridOptions1" class="grid"></div>
控制器中 table 的定义如下:
app.controller('MainCtrl', ['$scope', '$http', 'uiGridConstants', function ($scope, $http, uiGridConstants) {
$scope.gridOptions1 = {
enableSorting: true,
columnDefs: [
{ field: 'name' },
{ field: 'gender' },
{ field: 'company', enableSorting: false }
],
onRegisterApi: function( gridApi ) {
$scope.grid1Api = gridApi;
}
};
$http.get('https://cdn.rawgit.com/angular-ui/ui-grid.info/gh-pages/data/100.json')
.success(function(data) {
$scope.gridOptions1.data = data;
});
这里正在工作 PLUNKER!
我的问题是如何在网格初始化时按性别列对 table 进行排序?
您必须在 columnDef 中设置它以便在初始化网格时进行排序。
$scope.gridOptions1 = {
enableSorting: true,
columnDefs: [
{ field: 'name' },
{ field: 'gender',sort: { direction: uiGridConstants.ASC, priority: 1 } },
{ field: 'company', enableSorting: false }
],
onRegisterApi: function( gridApi ) {
$scope.grid1Api = gridApi;
}
};
如果想先显示男性也可以设置方向为desc
direction: uiGridConstants.DESC
我在我的项目中使用 ui-grid。
这是 html 中 table 的声明:
<div id="grid1" ui-grid="gridOptions1" class="grid"></div>
控制器中 table 的定义如下:
app.controller('MainCtrl', ['$scope', '$http', 'uiGridConstants', function ($scope, $http, uiGridConstants) {
$scope.gridOptions1 = {
enableSorting: true,
columnDefs: [
{ field: 'name' },
{ field: 'gender' },
{ field: 'company', enableSorting: false }
],
onRegisterApi: function( gridApi ) {
$scope.grid1Api = gridApi;
}
};
$http.get('https://cdn.rawgit.com/angular-ui/ui-grid.info/gh-pages/data/100.json')
.success(function(data) {
$scope.gridOptions1.data = data;
});
这里正在工作 PLUNKER!
我的问题是如何在网格初始化时按性别列对 table 进行排序?
您必须在 columnDef 中设置它以便在初始化网格时进行排序。
$scope.gridOptions1 = {
enableSorting: true,
columnDefs: [
{ field: 'name' },
{ field: 'gender',sort: { direction: uiGridConstants.ASC, priority: 1 } },
{ field: 'company', enableSorting: false }
],
onRegisterApi: function( gridApi ) {
$scope.grid1Api = gridApi;
}
};
如果想先显示男性也可以设置方向为desc
direction: uiGridConstants.DESC