为什么我使用时最初在列表中没有显示什么!(非)在AngularJS滤波器中


<p><input type="text" ng-model="test"></p>
 <ul>
   <li ng-repeat="x in names | filter:'!'+test">
   {{ x }}
   </li>
 </ul>

如何最初在列表中显示所有项目,然后在我输入时排除项目?最初,这些项目都没有显示。只有在我在文本框中键入某些内容之后,它才会显示不包括我键入的项目。

您缺少过滤器中的AngularJS strict:true操作员
这就是您需要的

<li ng-repeat="x in names | filter:'!'+test:true">
   {{ x }}
</li>

plnkr

在我的头顶上设置模型$ scope.test =''应该为您解决问题。

不需要此'!',您只需要通过NG模型值

<p><input type="text" ng-model="test"></p>
 <ul>
   <li ng-repeat="x in names | filter:test">
   {{ x }}
   </li>
 </ul>

最新更新