如何通过布尔表达式访问变量从ng.repeat过滤器内的控制器进行过滤?

问题描述:

如何从控制器中声明的变量中通过布尔表达式进行筛选?如何通过布尔表达式访问变量从ng.repeat过滤器内的控制器进行过滤?

是这样的:

<div ng-repeat="user in users | filter:{someVarFromController==true}"> 
    <div> 
     {{user.name}} 
    </div> 
</div> 

我管理它才把表达式使用集合属性 前工作:

<div ng-repeat="user in users | filter:{IsDomestic: true}"> 
+0

不一样但接近。 –

+0

我乞求赦免? – RollRoll

定义在你的控制器函数返回true或false对于一个特定的元素,并在过滤器中使用它。

$scope.showUser = function(user){ 
    // logic to decide if element should be displayed, or just: 
    return $scope.someVarFromController;  
}; 

<div ng-repeat="user in users | filter:showUser"> 

的观察:也许我失去了一些东西,但我不知道你为什么会想只是一个变量$scope过滤,没有提到从特定元素ng-repeat。通过这种方式,您的所有元素都将显示出来,或者不显示任何元素,在这种情况下,您最好在更高级别使用ng-ifng-show