Javascript ngRepeat:使用track by$索引时筛选器不工作

Javascript ngRepeat:使用track by$索引时筛选器不工作,javascript,angularjs,Javascript,Angularjs,这是我的html <body> <div ng-app="repeatdemo" ng-controller="rd"> <input type="text" ng-model="nameSearch" /> <div ng-repeat="x in names track by $index | filter : nameSearch"> {{x }} </div> </div> {{x} 这是我的剧本 <sc

这是我的html

<body>
<div ng-app="repeatdemo" ng-controller="rd">
<input type="text" ng-model="nameSearch" />
<div ng-repeat="x in names track by $index | filter : nameSearch">
{{x }}
</div>
</div>

{{x}
这是我的剧本

<script>
var rdapp=angular.module("repeatdemo",[]);
rdapp.controller("rd",function($scope){
$scope.names=['deepu','vicky','hello','hey','vickys'];

});
</script>

var rdapp=angular.module(“repeatdemo”,[]);
控制器(“rd”,功能($scope){
$scope.names=['deepu','vicky','hello','hey','vickys'];
});
当我使用track by
$index in repeat
选项时,过滤器不工作
请检查并尝试删除
ng repeat

中的
按索引跟踪
,如果您查看文档,您将在ngRepeat参数的说明中找到以下内容:

例如:items中的item | filter:searchText track by item.id是一种模式,可用于将筛选器与跟踪表达式一起应用于项目

ng repeat指令的代码应如下所示:

<div ng-repeat="x in names | filter: nameSearch track by $index">

问题在于您应用过滤器的顺序和中的轨迹



ah让我措手不及:)@shaunhusain是的,而且我认为直接从文档中引用的内容等于你链接到一个代码示例,可能是重复的,因为我遇到了同样的问题,它解决了。我得到的错误是:filter:notarray不是数组,就像vignash那样。你能解释一下为什么会出现这种错误吗?
<div ng-repeat="x in names | filter : nameSearch track by $index">