自从我实现了track by到 ng-repeat
中,它会阻止我的过滤器执行。例如,track by $index
就像一个魅力,但当我尝试添加一个输入字段来搜索我的对象时,没有任何反应,控制台也没有显示任何错误。
这是我的 html:
<input type="text" ng-model="searchText">
<div ng-repeat="message in messages.collection track by $index | filter : searchText">
<p>{{message.text}}</p>
</div>
我还创建了一个 Plunkr为了显示这两种情况(使用和不使用 track by
)。
我想知道这是语法问题还是其他问题以便修复它。
最佳答案
您需要在表达式末尾添加track by
。看到这个工作 plunkr .
代码:
<div ng-repeat="message in messages.collection | filter : searchText track by $index">
<p>{{message.text}}</p>
</div>
关于javascript - AngularJS:使用 'track by' 禁用 ng-repeat 中的过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24647126/