2013-02-12 67 views
12

我需要过滤以ng重复项,以便只有物品,其在不出现alreadyAddedValues()阵列将被显示:Angular.js:滤波器纳克重复由不存在阵列

<ul class="dropdown-menu"> 
    <li ng-repeat="v in values() | filter: { ????? } ">{{value.name}}</li> 
</ul> 

$scope.values() = function(){ 
    ................ 
} 

$scope.alreadyAddedValues() = function() 
{ 
    //returns an array 
} 

搜索一个已经增值应该由value.shortName

回答

30

执行可以,例如,使用自定义函数做过滤:

<li ng-repeat="v in values() | filter:filterAlreadyAdded ">{{value.name}}</li> 

在控制器:

$scope.filterAlreadyAdded = function(item) { 
    // filter logic here... 
    // return false if item already added, true otherwise 
}; 

的jsfiddlehttp://jsfiddle.net/bmleite/5VbCJ/

+3

我提出的替代小提琴传递通过已添加值的阵列,使其更稍微通用。位于这里http://jsfiddle.net/4MBbw/ – 2013-11-06 07:53:06