Vig*_*ian 3 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>
Run Code Online (Sandbox Code Playgroud)
这是我的剧本
<script>
var rdapp=angular.module("repeatdemo",[]);
rdapp.controller("rd",function($scope){
$scope.names=['deepu','vicky','hello','hey','vickys'];
});
</script>
Run Code Online (Sandbox Code Playgroud)
当我使用的轨道通过$index in repeat选项时,过滤器不能正常工作,请检查该小提琴和尝试删除track by index在ng-repeat
sha*_*ain 10
问题是您正在应用过滤器和轨道的顺序
http://jsfiddle.net/n3xnzvvs/1/
<div ng-repeat="x in names | filter : nameSearch track by $index">
Run Code Online (Sandbox Code Playgroud)
如果您查看ngRepeat的文档,您可以在ngRepeat参数的说明中找到它:
例如:项目中的项目 filter:searchText track by item.id是一种模式,可用于将过滤器与跟踪表达式一起应用于项目.
您的ng-repeat指令代码应如下所示:
<div ng-repeat="x in names | filter: nameSearch track by $index">
Run Code Online (Sandbox Code Playgroud)