변경 사항이있을 때 ng-repeat 목록을 필터링하는 입력이 있습니다. 반복에는 많은 양의 데이터가 포함되어 있으며 모든 것을 필터링하는 데 몇 초가 걸립니다. 나는 필터링 과정을 시작하기 전에 그들의 0.5 초 지연을 원합니다. 이 딜레이를 생성하는 각도가 올바른 방법은 무엇입니까?각도 변경 지연
입력
<input ng-model="xyz" ng-change="FilterByName()" />
반복
<div ng-repeat"foo in bar">
<p>{{foo.bar}}</p>
</div>
필터 (Filter) 기능
$scope.FilterByName = function() {
//Filtering Stuff Here
});
감사
는 당신은 지연을 추가하고 아마$timeout.cancel(previoustimeout)
의 사용과 새를 이전 시간 제한을 취소하고 실행할 수 있습니다
$timeout
를 사용할 수
에서 지침 '선행 입력-대기-MS = "1000"'사용할 수 있습니다. '$ scope.FilterByName = function() {$ timeout (_filterByName, 500)' – PSL
@PSL 여기서 함수는 무엇입니까? 검색을 한 번만 실행하면됩니다. 방금 오프셋하면 더 큰 지연을 만들고 여러 검색을 수행합니다. – MGot90
예, 귀하의 기능에. 이전 댓글에 스 니펫이 있습니다. 하나의 타임 아웃이 진행 중이고 또 다른 변경이 트리거되면'$ timeout.cancel (timeoutpromise)'를 사용할 수 있습니다. – PSL