1

我经常遇到这样的情况:我有一个指令(A),它接受一个项目列表,然后将这些项目的一个子集传递给另一个指令(B),但为了做到这一点,我总是必须查看指令 A 中的原始列表控制器,将其过滤到一个新数组中,并将其分配给我范围内的一个新变量。

我知道你可以这样做,但是当你使用另一个指令的引用 ( ){{ myList | filter:'!propertyName'}}时,你不能使用相同的表达式。=

有没有办法在模板中做到这一点,或者只是更好的方法?

这是一个例子:

在这种情况下,“iterable”使用键盘迭代它提供的项目。如果它被禁用,我不想能够选择一个项目,所以我想从 iterable 指令使用的列表中删除它。

<div class="list-directive">
   <iterable items="items" active="activeItem" disabled="enableKeyboardIteration"></iterable>
   <div ng-repeat="item in items" ng-class="{disabled: item.disabled, active: activeItem == item}" ng-mouseenter="makeItemActive(item)">
     {{item.name}}
   </div>
</div>
4

0 回答 0