Пытаюсь сделать простенький autocoсplete,возможно не совсем правильно но ....
вот мой код html :
<input type="search" placeholder="Search" ng-model="stationSearch.val">
<button class="button" ng-click="setStation(bn.name)" ng-repeat="bn in itemsList | filter:stationSearch.val">
{{bn.name}}
</button>
и код контроллера :
$scope.stationSearch = {}'';
$scope.setStation = function(bnn){
$scope.stationSearch.val = '';
$scope.stationSearch.val = bnn;
};
$http.get('http://serverUrl/')
.success(function(data){
$scope.itemsList = data;
})
после ответа $scope.itemsList равен :
$scope.itemsList = [
{'name': 'Iapetos Baltazar', 'amount': 1},
{'name': 'Mordred Maui', 'amount': 4},
{'name': 'Verethragna Tane', 'amount': 20},
{'name': 'Arawn Lir', 'amount': 7},
{'name': 'Cepheus Zephyrus', 'amount': 15},
{'name': 'Leander Pallas', 'amount': 9},
{'name': 'Chryses Vohu Manah', 'amount': 13},
{'name': 'Nuadha Lycus', 'amount': 19}
];
только в действительности этот массив "itemsLis" имеет около 2000 (2 тис) элементов object,и при наборе букв получается довольно большая задержка :(
Может кто подскажет как мне изменить мой фильтр чтобы он работал без тормозов.
Или возможно есть уже хорошие готовые решения autocompete которые работают с большим масивом данных ?
П.С.
Ето часть моего PhoneGap приложения.