使用angularjs中的去抖动延迟代码

前端之家收集整理的这篇文章主要介绍了使用angularjs中的去抖动延迟代码前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我必须在 angularjs中编写电子邮件验证功能.我希望在用户使用电子邮件ID进行编辑后2秒后发布帖子请求.在angularjs中是否有任何预先定义的方法. fiddle

@H_403_8@

@H_403_8@

var app = angular.module('form-example',[]);
    app.controller('formctrl',function($scope){
        var ctrl= this;
        ctrl.verifyEmail= function(){    
        console.log('hiiii')
        }

    })

解决方法

去抖动内置于Angular 1.3中.正如您所期望的那样,它是作为指令实现的.你可以这样做:

@H_403_8@

@H_403_8@

<input ng-model='address' ng-model-options="{ debounce: 500 }" />

$scope.address属性直到最后一次击键后500ms才更新.@H_403_8@

如果你需要更多的控制权@H_403_8@

如果您想要更多粒度,可以为不同的事件设置不同的跳出时间:@H_403_8@

@H_403_8@

<input ng-model='person.address' ng-model-options="{ updateOn: 'default blur',debounce: {'default': 500,'blur': 0} }" />

例如,我们有一个500ms的反弹用于击键,而没有反弹用于模糊.@H_403_8@

文档@H_403_8@

阅读文档:https://docs.angularjs.org/api/ng/directive/ngModelOptions@H_403_8@

猜你在找的Angularjs相关文章