如何在newFirst过滤器中的orderByName中使用过滤后的数组?这可能吗?
filter = (list | orderByName | newFirst )
我有一个列表按字母顺序排序,如果不是新列表,则需要再次排序。
答案 0 :(得分:1)
是的,您可以这样做。但是,您必须注意第二个排序函数不会覆盖第一个排序函数的结果。最简单的方法是使用具有多个排序参数的AngularJS的标准orderBy
过滤器:
使用对象属性:
ng-repeat="item in list | orderBy:['name', 'isNew']"
使用自定义比较器:
ng-repeat="item in list | orderBy:[orderByName, newFirst]"
第二种方法需要将功能orderByName
和newFirst
实现为比较器功能(请参见https://docs.angularjs.org/api/ng/filter/orderBy)。