我有一个简单的 Angular 表单,我想在其中过滤 ng-repeat,以便仅显示>5 的值。
<body ng-controller="MainCtrl">
<div ng-repeat="item in items | filter:value:>5??????/p>
<p><input type=text ng-model="item.value"></p>
</div>
</body>
我无法确定其语法。我假设它是一个内置过滤器。
引用:
app.controller('MainCtrl', function($scope) {
$scope.items = [ { value: 1 }, { value: 2 }, { value: 5}, { value: 7 } ];
最佳答案
没有为此内置的过滤器,也没有任何语法可以传递给默认过滤器。
您可以:
1。将函数传递给默认过滤器。
HTML:
<div ng-repeat="item in items | filter:filterFn">
JS:
$scope.filterFn = function(item) {
return item.value > 5;
};
2。注册您自己的过滤器
HTML:
<div ng-repeat="item in items | greaterThan:5">
JS:
app.filter('greaterThan', function() {
return function(items, value) {
var filtered = [];
for (var i = 0; i < items.length; i++) {
if (items[i].value > value) filtered.push(items[i]);
}
return filtered;
}
});
关于javascript - ng-Repeat 上的 Angular 简单过滤器 (>5),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24110311/