gpt4 book ai didi

javascript - 在没有 ng-if 的情况下从 ng-repeat 中排除嵌套数组中的元素

转载 作者:行者123 更新时间:2023-11-29 23:27:14 25 4
gpt4 key购买 nike

给定一个嵌套数组,我如何在 ng-repeat 中过滤这些值而不必使用 ng-if。

不使用 ng-if 的原因是我需要零值才能不占用 $index,因为我需要将该索引与该 View 中发生的其他事情相匹配。例如,这对我的 atm 不起作用:

<tr ng-if="row.value[0] !== 0 || row.value[1] !== 0" ng-repeat="row in chart.values track by $index">

在下图中,例如,如果 value[0] 或 value[1] 在 Asian/Indian 下为零,则它们不应出现在 ng-repeat 中。数据如下所示:

enter image description here

最佳答案

您可以使用 ng-show 并在方法中求值;这将保留 $index'es :

$scope.showRow = function(row) {
return row.value[0] !== 0 || row.value[1]!== 0
}
<tr ng-repeat="row in chart.values track by $index" ng-show="showRow(row)">

更新。如果您不想保留 $index,您可以将上面的 showRow 修改为:

$scope.showRow = function(row) {
return !(row.value[0] == 0 || row.value[1] == 0)
}

然后将其用作过滤器:

<tr ng-repeat="row in chart.values | filter:showRow track by $index">

由此,无论过滤掉什么,跟踪的 $index 将是 0、1、2、3、4 等。

关于javascript - 在没有 ng-if 的情况下从 ng-repeat 中排除嵌套数组中的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48674861/

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