[英]filter ng-repeat by function
我想使用ng-repeat
遍歷數組,並根據函數屬性過濾包含的對象。 柱塞
這意味着我有一個這樣的對象:
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">
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.