在父对象上使用ng-if ng重复



我从前端开发开始,我不知道是否可以使用AngularJS和ng repeat。

我有一个数组,有3个级别的数据,所以第一个ng重复列出了级别1,里面有另一个ng重复,列出了级别2,最后还有一个列出了级别3。类似这样的东西:

<div ng-repeat="item-1 in level-1">
<div ng-repeat="item-2 in level-2">
<div ng-repeat="item-3 in level-3">
{{item-3.name}} : {{item-3.valid}}
</div>
</div>
</div>

我不想知道的是,是否可以在第一级重复上使用ng-if指令,但有一个tird级重复的条件,类似于这样的东西:

<div ng-repeat="item-1 in level-1" ng-if="item-3.valid == true">
<div ng-repeat="item-2 in level-2">
<div ng-repeat="item-3 in level-3">
{{item-3.name}} : {{item-3.valid}}
</div>
</div>
</div>

谢谢!

把这个逻辑移到管理这个HTML的控制器上怎么样。例如:

$scope.toBeDisplayedItems = [..];
$scope.level1 = [..];
$scope.level2 = [..];
$scope.level3 = [..];
for (var item1 in $scope.level1) {
for (var item2 in $scope.level2) {
for (var item3 in $scope.level3) {
// do something with $scope.level1[item1] $scope.level2[item2] $scope.level3[item3] 
// then fill the candidate array to be used in the HTML
$scope.toBeDisplayedItems.push(....);
}
}
}

在您的HTML:中

<div ng-repeat="item in toBeDisplayedItems">
{{item.name}} : {{item.valid}}
</div>

顺便说一句,在第一个循环的顶层,我没有得到你对第3项的检查,这真的有效吗?不管怎样,我回答你的方式,而不是如何。

最新更新