下令让我们假设我有这种形式的以下数据数组:AngularJs - ngOptions:如何通过组名称,然后通过标签
var data = [{group:GroupA, label: BB}, {group:GroupB, label: DD}.....].
我的结合会是这样的:
<select data-ng-options="c as c.label group by c.group for c in data"></select>
我希望下拉列表在GroupB之前列出所有与GroupA的项目,同时让它们也在每个组下排序。
就是这样。
GroupA
AA
BB
CC
GroupB
DD
EE
FF
我知道我可以使用orderBy Angular过滤器,但那并不是真正按我需要的方式工作。我的猜测是我必须编写一个自定义过滤器,以我想要的方式手动排序,但是我想知道是否有更简单的方法来完成任务。
谢谢。我没有意识到你可以将一个数组传递给orderBy。猜猜我忽略了angularjs文档中的那个部分。但至少我知道有一种更简单的方法,因为这将是一个非常常见的用例。 –
你可以使用这种方法指定排序顺序吗?即我想按组asc排序然后标签desc? –
@RossJones是的,你可以将'['group','label']'改成'['+'''''''''''' – sh0ber