假设我有这个对象
"results" : [
{
"Item.ad_title" : "Test Phone",
"System.id" : "29183546",
"Transaction.price" : "700.00",
"Owner.phone_number" : "22225987",
"Publication" : {
"publication_text" : "bla bla bla "
},
"Item.id" : "142",
"Owner.email" : "email@email.com",
"Item.tags" : [
"tag1",
"tag2",
"teg3"
]
},
]
以及带有 ng-model="search"
和 ng-repeat="product in products | filter: search"
的文本输入。
这可行,但对象中的所有内容都是可搜索的,包括所有者的电话号码和电子邮件。
有没有办法告诉 Angular 只搜索特定数据,例如 Item.ad_title
、publication.publication_text
、Transaction.price
和 Item.tags
?
编辑:我希望它能够与一个搜索输入字段一起使用
最佳答案
在 angular documentantion你可以找到它
<label>Any: <input ng-model="search.$"></label> <br>
<label>Name only <input ng-model="search.name"></label><br>
<label>Phone only <input ng-model="search.phone"></label><br>
<label>Equality <input type="checkbox" ng-model="strict"></label><br>
<table id="searchObjResults">
<tr><th>Name</th><th>Phone</th></tr>
<tr ng-repeat="friendObj in friends | filter:search:strict">
<td>{{friendObj.name}}</td>
<td>{{friendObj.phone}}</td>
</tr>
</table>
ng-mode="search.property",然后在过滤器中指定 strict
关于javascript - 如何在 AngularJS 中仅搜索某些对象数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34063039/