我正在尝试为AngularJS数据创建一个过滤器。我有 2 个输入,minAgeInput 和 maxAgeInput。
我想返回所有产品/对象(带有 ng-repeat),其中产品的 minAge 和 maxAge 在输入值设置的边界内。
我的过滤器函数如下所示:
或链接到 Plunker
$scope.ageRange = function (plane) {
var minAgeProduct = parseFloat(product.minAge);
var maxAgeProduct = parseFloat(product.maxAge);
var minAgeInput = parseFloat($scope.minAge);
var maxAgeInput = parseFloat($scope.maxAge);
if(minAgeInput >= minAgeProduct) {
if(maxAgeInput <= maxAgeProduct) {
return true;
} else {
return false;
}
return true;
} else {
return false;
}
};
以下是该问题的功能解决方案:
$scope.ageRange = function (plane) {
var minAgeProduct = parseFloat(plane.minAge);
var maxAgeProduct = parseFloat(plane.maxAge);
var minAgeInput = parseFloat($scope.minAge);
var maxAgeInput = parseFloat($scope.maxAge);
if (!isNaN(minAgeInput) && maxAgeProduct < minAgeInput)
return false;
if (!isNaN(maxAgeInput) && minAgeProduct > maxAgeInput)
return false;
return true;
};
一个可行的解决方案可以在这里找到 普伦克