嵌套数据的AngularJS搜索
我对AngularJS是新手。我正在尝试基于用户名进行简单搜索,在我的情况下,用户名不存储在最顶层。以下是一个例子:嵌套数据的AngularJS搜索,angularjs,angularjs-directive,Angularjs,Angularjs Directive,我对AngularJS是新手。我正在尝试基于用户名进行简单搜索,在我的情况下,用户名不存储在最顶层。以下是一个例子: <div ng-init="users = [ {'fields':{'name':'Mary Brown','person_nickname':'M'},'username':'mbrown'}, {'fields':{'name':'John Smith','person_nickname':'J-Dog'},'username':'jsmith'}]"> <
<div ng-init="users = [
{'fields':{'name':'Mary Brown','person_nickname':'M'},'username':'mbrown'},
{'fields':{'name':'John Smith','person_nickname':'J-Dog'},'username':'jsmith'}]">
</div>
Plnkr目前未运行,但如果您有要筛选的ng repeat,请查看官方文档,尤其是向上投票的评论非常有用: myArray中的项|筛选器:{PropertyAtWillBeFiltered:value}
若您谈论的是在模型内部搜索,那个么您应该在数组上使用方法 我在上面添加了代码。我使用的是ng repeat,但我试图找出过滤器的值。angular文档中的示例假设数据位于顶层,而我无法让它与用户数据结构一起工作。我已经分叉并修改了您的plunk:在这里,您可以确切地看到如何编写过滤器表达式。
<!doctype html>
<html ng-app="App">
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/angularjs/1.2.0-rc.3/angular.min.js"></script>
<script type="text/javascript" src="script.js"></script>
</head>
<body>
<div ng-init="users = [
{'fields':{'name':'Mary Brown','person_nickname':'M'},'username':'mbrown'},
{'fields':{'name':'John Smith','person_nickname':'J-Dog'},'username':'jsmith'}]">
</div>
Name only <input ng-model="search.fields"><br>
<table id="userTable">
<tr ng-repeat="user in users | filter:search">
<td>{{user}}</td>
</tr>
</table>
</body>
</html>