我有一个项目名称范围从A-Z的数组。
对于字母表中的每个字母,我想要做的是ng-repeat
。
对于Array中的A字母:
<div ng-repeat="item in items | orderBy: 'item_name'">
{{item.item_name}}
</div>
对于Array中的B字母:
<div ng-repeat="item in items | orderBy: 'item_name'">
{{item.item_name}}
</div>
我怎样才能做到这一点?
答案 0 :(得分:3)
您可以使用custom filter
<div ng-repeat="item in items | filter:criteriaMatch('z')">
{{item.name}}
</div>
<div ng-repeat="item in items | filter:criteriaMatch('A')">
{{item.name}}
</div>
和filter
功能如下
$scope.criteriaMatch = function(x) {
return function( item ) {
return item.name.startsWith(x);
};
};
这里是 Working fiddle
希望它可以帮助你:)
答案 1 :(得分:1)
您可以使用angular.filter
module:
groupBy
过滤器
<div ng-repeat="item in items | groupBy: 'item_name.substr(0,1)'">
{{item.item_name}}
</div>