如何与ng-grid中自定义排序函数中的行实体相关联?

时间:2013-07-31 06:35:11

标签: angular-ui ng-grid

我按照https://github.com/angular-ui/ng-grid/wiki/Sorting-and-filtering中的文档进行操作 但传递给自定义排序函数的唯一信息是相关列中单元格的值。

我想访问自定义排序功能中的其他列。

e.g:http://plnkr.co/edit/FvcKQjkUv1eeoYPzjdRD?p=preview 考虑到这个角色后,我想按名字排序。如果提供行实体或其他类型,这将很容易。

感谢您的帮助。 尤瓦

1 个答案:

答案 0 :(得分:2)

尝试通过标题模板实现,整个控件都在您的手中,将回调排序到一个您可以执行任何操作的函数

var myHeaderCellTemplate = '<div class="ngHeaderSortColumn {{col.headerClass}}" ng-style="{cursor: col.cursor}" ng-class="{ ngSorted: !noSortVisible }">'+
    '<div ng-click="sortByMyPreference()" ng-class="\'colt\' + col.index" class="ngHeaderText">{{col.displayName}}</div>'+
    '<div class="ngSortButtonDown" ng-show="ID.down"></div>'+
    '<div class="ngSortButtonUp" ng-show="ID.up"></div>'+
    '<div class="ngSortPriority">{{col.sortPriority}}</div>'+
    '<div ng-show="col.resizable" '+
          'class="ngHeaderGrip" '+
          'ng-click="col.gripClick($event)" '+
          'ng-mousedown="col.gripOnMouseDown($event)"></div>';

这里是plunker http://plnkr.co/edit/OxyV1NlgznEJ8ulNAkt2?p=preview

我已经离开了排序的实现,你单击名称选项卡它将显示一个警报和ID.down和ID.up你可以切换为true false来显示箭头