Mam dane wejściowe, które filtrują listę powtórzeń ng po zmianie. Powtórzenie zawiera dużo danych i przefiltrowanie wszystkiego zajmuje kilka sekund. Chciałbym, aby były opóźnione o 0,5 sekundy przed rozpoczęciem procesu filtrowania. Jaki jest prawidłowy sposób w kątowym, aby utworzyć to opóźnienie?
Wejście
<input ng-model="xyz" ng-change="FilterByName()" />
Powtarzać
<div ng-repeat"foo in bar">
<p>{{foo.bar}}</p>
</div>
Funkcja filtra
$scope.FilterByName = function () {
//Filtering Stuff Here
});
Dzięki
$timeout.cancel(timeoutpromise)
jeśli trwa jeden limit czasu, a inna zmiana zostanie wyzwolona.
$timeout
przez 500 ms.$scope.FilterByName = function () { $timeout(_filterByName , 500)