我填充一个下拉列表通过使用ng选项挂接到一个控制器,反过来是调用服务。不幸的是,数据进来是一团糟,我需要能够按字母顺序排序。
你认为像$ .sortBy这样的东西会做,但不幸的是它没有做杰克。我知道我可以通过javascript与帮助方法函数asc(a,b)或类似的东西排序,但我拒绝相信没有更清洁的方式做这个加我不想膨胀控制器与帮助方法。它是一个基本的原则,所以我不明白为什么AngularJS没有这个。
有没有办法像$ orderBy(‘asc’)?
例:
<select ng-option="items in item.$orderBy('asc')"></select>
这将是非常有用的选项,以便,所以你可以做任何你想要的,只要你通常尝试排序数据。
Angular有一个
orderBy过滤器,可以这样使用:
原文链接:https://www.f2er.com/angularjs/147287.html<select ng-model="selected" ng-options="f.name for f in friends | orderBy:'name'"></select>
参见this fiddle为例。
值得注意的是,如果track by被使用,它需要出现在orderBy过滤器之后,如下所示:
<select ng-model="selected" ng-options="f.name for f in friends | orderBy:'name' track by f.id"></select>