gpt4 book ai didi

javascript - 按功能过滤 ng-repeat

转载 作者:行者123 更新时间:2023-12-03 07:05:36 25 4
gpt4 key购买 nike

我想使用 ng-repeat 迭代数组并根据函数属性过滤包含的对象。 Plunker

这意味着我有一个像这样的对象:

vm.show1 = function(){
return true;
};
var object1 = {label: 'Object1', show: vm.show1};

并想像这样过滤它:

<div ng-repeat="object in ctrl.objects | filter:{show:true}">{{object.label}}</div>

显然,在上面的示例中,vm.show1 是一个函数(因此不等于true)。有没有办法让过滤器调用函数并评估结果,或者我是否必须编写自定义过滤器?

编辑:这有可能吗?如果 Angular 不能处理开箱即用的脏检查,过滤器将不知道何时需要重新评估该函数。

最佳答案

我认为最好的方法是使用自定义过滤器函数:

$scope.filterFn = function(object)
{
//if true, rendered in ng-repeat
//if false, not rendered in ng-repeat
return object.show1();
};

<div ng-repeat="object in ctrl.objects | filter:filterFn">

关于javascript - 按功能过滤 ng-repeat,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36839940/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com