我有一个元素数组,$ scope.hides = [3,5]我正在使用ng-repeat和ng-if将这些值与表中的值进行比较。
如果数组和表中的值匹配,则应隐藏表中的该行,
数组元素为-3,5,表值位于||之后。 [3,5](数组值)|| 1(表值)。
由于有2个元素,ng-repeat迭代2次并在每次迭代中删除一个元素。我想在单次迭代中删除所有匹配的元素
这是我的代码,
ng-repeat="x in hides track by $index" ng-if="x != (values populated from controllers)"
任何人都可以帮助删除单次迭代中的所有匹配元素而不是2次迭代......
答案 0 :(得分:0)
由于 平面原始数组的最简单方法是: 如果您需要更高级的查找以查看数组中是否存在x,您可以考虑放弃ng-if并使用类似:(values populated from controllers)
是一个数组且x
是一个整数,因此您需要检查 x
<中是否存在(values populated from controllers)
/ p>
ng-if="(values populated from controllers).indexOf(x) == -1"
ng-repeat="x in hides track by $index | filter:isInArray
的内容,其中$scope.isInArray
是一个自定义谓词函数,按照filter docs。