angularjs - 使用空对象进行 Angular 排序

标签 angularjs sorting

当我按 ASC 排序时,我需要在顶部获取空值记录

<tr ng-repeat="footballer in footballers=(footballers | orderBy:predicate)">
predicate : ['team.name','id]

一些足球运动员没有团队,所以团队 object == nullteam.name==null ,我需要让他们在顶部

我想重写排序函数,但我需要保存谓词

最佳答案

你可以在你的 Controller 中使用这样的东西:

$scope.nullsToTop = function(obj) {
  return (angular.isDefined(obj.team) ? 0 : -1);
};

在 HTML 上:
<tr ng-repeat="footballer in footballers | orderBy:[nullsToTop].concat(predicate)">

这样你就可以单独维护你的谓词。只需在 orderBy 表达式中连接 nullsToTop 函数以首先运行它。

Plunker

关于angularjs - 使用空对象进行 Angular 排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25662001/

相关文章:

c - memmove 与复制单个数组元素

sorting - jdk 中的快速排序或 O(N.logN) 排序

angularjs - 如何在访问 IdentityServer 的同一旅程中获取 Angular 中的访问 token - MVC、WebApi 和 Angular

javascript - Angular 选择框在第一次更改时不起作用

java - 两个排序数组的中位数 : Termination condition failing

java - 将 4 个排序数组合并为一个

javascript - 数组已排序,但 React 未按排序顺序渲染

angularjs - Angular CRUD——如何自动聚焦到文本框?

javascript - 如何使用 JavaScript 通过 AngularJS 模型动态添加新输入?

javascript - Angularjs ng 单击清除输入并更新范围