问题标签 [angularjs-orderby]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
250 浏览

javascript - 使用 ng-repeat 对数组进行排序,未定义不是函数

我正在使用 ng-repeat 循环遍历我的数据。但是我使用了一堆过滤器来应用。其中之一是对我获得的数组进行排序的过滤器。通常我会使用'orderBy'作为角度的默认方法。

但我需要按价格订购传入的数组,价格可以相同。在那种情况下,角度有时会解决一些小问题。

因此,我编写了自己的订单过滤器:

此过滤器按顺序排列数据数组,并确保它按价格排序,如果两个价格相同,则按 ID(这是一个字符串)在我使用的视图中排序。

当我重新加载站点时,我收到“未定义不是函数”指示代码行的错误 data.sort(function(a,b) {

我的过滤器有什么问题吗?我只是似乎不承认我在这里的错误。

希望你能帮忙。

注意:即使我通过实现不是过滤器而是应用到数据的函数来预先订购数据数组,我也会在 data.sort() 处获得相同的错误......这有什么问题吗?

0 投票
2 回答
281 浏览

angularjs - 如何使用Angular.js对json中的整数值进行排序

我正在尝试以orderBy角度使用功能,并按顺序订购RollNo但它不起作用请检查下面的代码

脚本

JSON

HTML

0 投票
1 回答
273 浏览

javascript - 在 orderBy'd 后获取最后一个 ng-repeat 项目

我正在尝试生成术语列表及其定义,但在每个字母部分的开头放置一个标题。IE

一个

苹果

香蕉

为此,我有以下代码:

definitions如果订购,这很好用。但如果不是,这不起作用。IE 考虑列表

根据我目前的逻辑,这将产生以下列表:

一个

香蕉

苹果

那是因为当我这样做时firstLetterOfTerm(definitions[$index])$index指向原始的无序列表。有什么办法可以让它正确定位$index吗?或者也许是一种不同的方式来构建这个产生相同结果的解决方案

注意:我不想预先对列表进行预排序,因为它可能非常大。

0 投票
2 回答
764 浏览

angularjs - Angularjs ng-repeat:复选框在 IE10 中为黑色

我注意到在 IE10 中,复选框的背景颜色填充为黑色,然后转换回白色。当我使用 ng-repeat 进行排序时,IE10 似乎不会触发将复选框背景颜色变回白色/正常颜色的事件。

这是对复选框执行 ng-repeat 并根据状态和名称过滤它们的 HTML:

已经绑定到点击事件的控制器方法:

IE10版本:IE10.0.9200.17229

Angularjs 版本:AngularJS v1.2.23

问题截图:

在此处输入图像描述

有人能帮我吗?

0 投票
1 回答
1047 浏览

javascript - orderBy $filter 在删除项目后阻止 ng-repeat 列表更新(拼接)

我有一个使用 ng-repeat 显示并按名称 desc 排序的列表。

每个项目都有一个item-delete指令,它包含和在项目单击时我使用给定的函数$index从列表中删除项目,然后我更新列表 - 这不起作用!indexsplice

从我的调试结果来看,orderBy在指令内部调用过滤器后会出现问题。如果我像这样直接删除项目,scope.list.splice(index, 1)它可以工作,但删除的项目不是正确的项目,因为项目是由 ng-repeat 订购的,所以我必须以相同的方式订购它们,然后我可以执行正确的删除。

一种解决方法是$emit新列表并更新控制器内的范围,但我不想这样做。测试和工作(见片段)。

Ascope.$apply将遇到digest already in progress错误(因为这部分代码在我的应用程序的承诺中)并且没有$timeout列表在工作时不会更新(使用noFilter例如,使用过滤器)。

*我正在使用指令从列表中删除一个项目,因为我在项目点击(DOM 更改、服务调用)上做了很多事情,而控制器不是这样做的地方(如果你在想为什么我'不是通过控制器执行此操作)。

另外,这里有一个 plnkr 。

0 投票
1 回答
354 浏览

angularjs - Angular中具有未定义值的自定义过滤器

我在 Angular 中有一组对象,我试图以一种非常具体的方式进行排序,但我无法弄清楚。

这是示例 Javascript:

var app = angular.module('app', []);

这是示例 HTML:

这是小提琴:https ://jsfiddle.net/r4nsyp2v/1/

而不是显示如下:

我希望它显示如下:

因此,如果存在,我想从最大到最小显示“子”键,之后是未定义的“子”键。并按组按字母顺序显示具有未定义“子”键的对象。

我还没有找到诀窍....有什么想法吗?

0 投票
1 回答
220 浏览

angularjs - AngularJS orderBy 不能与 trackBy 一起使用

我不知道为什么 orderBy 不能与 trackBy 一起使用,这让我抓狂:(

这是我的 HTML 代码:

即使我将顺序更改为反向,每次都给我相同的结果

这里是我的 AngularJS 代码:

如果您需要更多代码,请告诉我

0 投票
1 回答
348 浏览

angularjs - 如何在AngularJS(1.2)中使用orderBy进行排序,而不会出现不完整的条目跳来跳去

好的,所以我正在用 AngularJS 做一些基本的 CRUD。这是视图:

问题在于,当您在输入中键入新用户时,该行的位置会跳到按字母顺序排列的位置。显然我希望这种情况发生,但前提是用户完成输入并点击“保存”。

0 投票
1 回答
2637 浏览

javascript - 单击时更改 OrderBy Angular 图标

我正在与 Angular 合作来做到这一点。

我有一张桌子,顶部有一些标题。表格标题内有很少的向下箭头。单击时,这些图标会根据单击其标题的列对表格进行排序。这也是一个切换,所以如果您再次单击列标题,它将在按升序或降序对列进行排序之间切换。

我试图弄清楚当单击列标题并重新使用列(在升序和降序之间切换)时,如何使箭头在两个不同的图像之间切换(一个箭头图像指向上方,另一个指向下方)。我该怎么做?

设置相当简单。这是一个列标题:

这是我的桌子本身:

此外,这是一个演示整个事情的代码笔:http: //codepen.io/trueScript/pen/XJLEVQ

因此,当单击该列时,我需要一种方法在列标题的 ng-src 值中的两个图像之间切换,以便向上箭头切换为向下箭头,反之亦然。但是,显然在那一列上应该切换方向。

我该怎么做?

0 投票
1 回答
496 浏览

javascript - OrderBy 和渐进式加载 AngularJS

当我在具有自动递增 limitTo 的 ng-repeat 中使用 orderBy 时遇到问题。当页面加载一些元素时,指令停止工作并停止增加元素限制。

这是html:

这是指令:

最后是 loadMore 函数

对不起我的英语,如果您不明白我的意思或需要更多信息,请告诉我。