Angularjs:有条件的链式过滤器?

时间:2014-07-25 14:28:05

标签: angularjs filter angularjs-filter

我想通过应用最多3个过滤器来创建现有阵列的数组。

是否可以有条件地链接过滤器,如下所示?

<div ng-init="questions =  (quizz.questions | f1&&filter:{f1:f1} | f2&&filter:{f:f2} |f3&&filter:{f: f3} )"></div>

1 个答案:

答案 0 :(得分:0)

从我收集的内容来看,您有条件地组合了多个自定义过滤器?您可以将参数传递给每个过滤器,指示它是否应该实际过滤结果或仅返回输入数组。

例如:

<div ng-init="questions = (quizz.questions | filter:f1 | filter:f2 | filter:f3 )"></div>

其中f1 / f2 / f3控制是否应该应用过滤器(抱歉,不太确定您所需的逻辑)。过滤器可能如下所示:

.filter('filter', function (input, apply) {

    if (!apply) {
        return input;
    }

    ...
});