J'ai un problème de performances que je n'arrive pas à résoudre. J'ai une recherche instantanée mais elle est un peu lente, car elle commence à chercher sur chacun keyup()
.
JS:
var App = angular.module('App', []);
App.controller('DisplayController', function($scope, $http) {
$http.get('data.json').then(function(result){
$scope.entries = result.data;
});
});
HTML:
<input id="searchText" type="search" placeholder="live search..." ng-model="searchText" />
<div class="entry" ng-repeat="entry in entries | filter:searchText">
<span>{{entry.content}}</span>
</div>
Les données JSON ne sont même pas si volumineuses, 300 Ko seulement, je pense que ce que je dois accomplir est de mettre un délai d'environ 1 seconde sur la recherche pour attendre que l'utilisateur ait fini de taper, au lieu d'exécuter l'action à chaque frappe. AngularJS fait cela en interne, et après avoir lu des documents et d'autres sujets ici, je n'ai pas trouvé de réponse spécifique.
J'apprécierais tous les conseils sur la façon dont je peux retarder la recherche instantanée.