我有这个:
<div class="row" ng-repeat="(key, value) in categories">
<h5>{{ value }}</h5>
<ul>
<li ng-repeat="post in $parent.posts | filter: key">{{ post.name }} -- {{ post.category }}</li>
</ul>
</div>
我希望帖子的嵌套ng-repeat
按类别key
进行过滤。
我们的想法是让每个帖子都显示相关帖子,其中{{ post.category }}
与{{ value }}
相同
答案 0 :(得分:2)
可以使用object
来实现迭代ng-repeat
并使用key of parent
过滤子custom function
的要求,而var app = angular.module('sample', []);
app.controller('samplecontroller', function($scope) {
$scope.filterKey = function(value) {
return {
name: value
};
};
$scope.categories = {
'John': 'English'
};
$scope.posts = [{
name: 'John',
category: 'General'
}, {
name: 'James',
category: 'Restricted'
}]
});
又会返回对象。检查下面创建的示例应用程序。
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<body ng-app="sample">
<div ng-controller="samplecontroller">
<div class="row" ng-repeat="(key, value) in categories">
<h5>{{ value }}</h5>
<ul>
<li ng-repeat="post in $parent.posts | filter: filterKey(key)">{{ post.name }} -- {{ post.category }}</li>
</ul>
</div>
</div>
</body>
{{1}}