我有一个搜索输入字段,其中的重新查询函数绑定到 ng-change。
<input ng-model="search" ng-change="updateSearch()">
然而,这对每个角色来说都太快了。所以我最终做了很多这样的事情:
$scope.updateSearch = function(){
$timeout.cancel(searchDelay);
searchDelay = $timeout(function(){
$scope.requery($scope.search);
},300);
}
这样,请求仅在用户停止输入后 300 毫秒发出。有什么解决方案可以将其包装在指令中吗?
从 Angular 1.3 开始,这更容易实现,使用ng模型选项 https://docs.angularjs.org/api/ng/directive/ngModelOptions:
<input ng-model="search" ng-change="updateSearch()" ng-model-options="{debounce:3000}">
Syntax: {debounce: Miliseconds}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)