我对角度全新,请原谅我的问题。 我正在尝试使用用户输入创建过滤器列表。这是我想要做的事情的一个吸引人。 http://plnkr.co/edit/asrZJj2HFJCnmmqJLlgt?p=preview
我明白我的ng-repeat的条件应该是这样的:
ng-repeat="filter in filters | filter: filters"
并在我的过滤器内部使用
ng-repeat="...| filter:{dev:java, happy:true}"
我可以按照我想要的方式进行操作,还是必须创建过滤器模块?
答案 0 :(得分:1)
您可以做的最简单的事情是将简单对象用于过滤器而不是数组,其中过滤器名称将是属性键。在这种情况下,您将渲染如下过滤器:
<span class="btn btn-success" ng-repeat="(name, value) in filters">
<strong>{{name}} : {{value}}</strong>
</span>
并在控制器中填充它们:
$scope.createFilter = function(name, value) {
$scope.filters[name] = value;
$scope.cleanInput();
};
通过此设置,可以非常轻松地将过滤器应用于表格数据:
ng-repeat="user in users | filter:filters"