var app = angular.module('app', ['ngTouch', 'ui.grid']);
app.controller('MainCtrl', ['$scope', 'uiGridConstants', function ($scope, uiGridConstants) {
$scope.gridOptions = {
columnDefs: [
{ name: 'name' ,
suppressRemoveSort: true,
sort: {
direction: uiGridConstants.ASC,
priority: 0
}
},
{ name: 'gender',
suppressRemoveSort: true,
sort: {
direction: uiGridConstants.ASC,
priority: 1
}
},
{ name: 'company',
suppressRemoveSort: true,
sort: {
direction: uiGridConstants.ASC,
priority: 2
}
},
],
enableSorting: true,
onRegisterApi: function( gridApi ) {
$scope.gridApi = gridApi;
$scope.gridApi.core.on.sortChanged( $scope, function( grid, sortColumns ) {
var printColumn = function(column) {
console.log("Column " + column.name + ": sort=" + JSON.stringify(column.sort) + ", colDef.sort=" + JSON.stringify(column.colDef.sort));
}
var printColumns = function(columns) {
columns.forEach(function(column) {
printColumn(column);
});
}
console.log("==================================");
printColumns(sortColumns);
});
}
};
$scope.gridOptions.data = [
{name: "nameA", gender: "genderA", company: "companyA"},
{name: "nameB", gender: "genderA", company: "companyB"},
{name: "nameC", gender: "genderA", company: "companyA"},
{name: "nameA", gender: "genderB", company: "companyB"},
{name: "nameB", gender: "genderB", company: "companyA"},
{name: "nameC", gender: "genderB", company: "companyB"},
];
}]);
.grid {
width: 500px;
height: 250px;
}
<!doctype html>
<html ng-app="app">
<head>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.2.26/angular.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.2.26/angular-touch.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.2.26/angular-animate.js"></script>
<script src="http://ui-grid.info/docs/grunt-scripts/csv.js"></script>
<script src="http://ui-grid.info/docs/grunt-scripts/pdfmake.js"></script>
<script src="http://ui-grid.info/docs/grunt-scripts/vfs_fonts.js"></script>
<script src="http://ui-grid.info/release/ui-grid-unstable.js"></script>
<link rel="stylesheet" href="http://ui-grid.info/release/ui-grid-unstable.css" type="text/css">
<link rel="stylesheet" href="main.css" type="text/css">
</head>
<body>
<div ng-controller="MainCtrl">
<div id="grid1" ui-grid="gridOptions" class="grid"></div>
</div>
<script src="app.js"></script>
</body>
</html>