我有一个很好的小方法来搜索数据。
$scope.searchContacts = function(term) {
console.log(term)
$scope.contacts = $scope.contacts.filter(function(contact) {
var name = contact.name.toLowerCase();
if(name.indexOf(term.toLowerCase()) > -1) {
return true;
}
});
};
这将使用输入关键字更新 $scope.contacts
,但是当存在退格键时,我现在遇到了问题,因为对象已从范围中删除。有办法解决这个问题吗?
最佳答案
考虑使用过滤器,而不是修改原始数组(覆盖它)。因此您不应手动更改 $scope.contacts
。
在 Controller 中:
$scope.filters = {};
$scope.searchContacts = function() {
$scope.filters.name = $scope.term;
};
然后在呈现联系人的地方,您将看到如下内容:
<div ng-repeat="contact in contacts | filter:filters">...</div>
关于javascript - Angular搜索功能如何恢复?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34794420/