AngularJS复选框可启用/禁用我的过滤器

时间:2019-01-21 19:54:13

标签: html angularjs angularjs-directive angularjs-ng-repeat angular-filters

嗨,我正在尝试获取一个过滤器,以返回具有一定数量但似乎无法正常运行的实例。我在HTML中拥有的内容:

当我选中此复选框时,我希望应用过滤器:

<input type="checkbox" value="true" ng-model='filterSales' >

这是我拥有的:

<div class='col-md-12' ng-repeat='sku in value | QuantityFilter'>

我刚刚能够学习如何创建自定义过滤器,但是现在我很难弄清楚如何切换它。

1 个答案:

答案 0 :(得分:2)

如果只想知道如何查看是否已设置复选框,则可以按照文档底部的示例所示,将参数添加到过滤器函数中:https://docs.angularjs.org/api/ng/filter/filter

您需要在应用过滤器的ng-repeat中添加:filterSales

<div class='col-md-12' ng-repeat='sku in value | quantityFilter:filterSales'>

在js中,您需要添加另一个参数,在此示例中,“数组”包含重复的数组(在您的情况下为“值”),并且toggleVar具有复选框值。

"use strict";

app.filter("quantityFilter", function () {

    function quantityFilter(array, toggleVar) {
        if(!toggleVar){
            return array;
        }

        let result = [];

       // TODO: Build new array based on your criteria

        return result;
    }

    return quantityFilter;
});
相关问题