我有一些角色代码,我正在使用并希望很快重构。
我想通过基于复选框的ng-repeat
进行过滤。使用过滤器更新ng-repeat
我有一个数据树,看起来是这样的...
{
name: 'mail',
rating: 2.4,
source: 'EDD',
users: 1000,
description: ''
}
的ng-repeat
工作是建立通过
<li ng-repeat="rule in property">{{rule[entityPropertyName]}</li>
遍历该物业更名为关闭时存在的产品服务在搜索控制器像这样
HTML
<search-section productName="qualifier"
product="qualifiers"
entityPropertyName="name"></search-section>
指令
controller: 'searchController',
scope: {
product: '=',
productName: '@',
entityPropertyName: '@'
},
我通过复选框过滤用一个简单的功能在控制器
$scope.filterAdded = function(sourceName) {
if($scope.filteredQualifiers.sourceName[sourceName]) {
return sourceName;
}
} // returns source name
源名返回前:媒体,或年龄。
我希望我可以添加
$scope.filterAdded
到ng-repeat
迭代器,像这样
<li ng-repeat="rule in property | filter: filterAdded">{{rule[entityPropertyName]}</li>
这个过滤器会从该指令的支持,像这样
scope: {
entities: '=',
entityName: '@',
entityPropertyName: '@',
filterAdded: '&'
},
随着filterAdded被视为一种功能。
带过滤器添加像返回一个值EDD
我确定了我,我需要通过规则源进行过滤。
source: 'EDD'
没有看到的方式,我可以比较得到rule.source和filterAdded值。
<li ng-repeat="rule in property | filter: filterAdded"></li>
任何洞察力或反馈意见赞赏。