Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
angularjs数据绑定w侦听器_Angularjs_Angularjs Controller - Fatal编程技术网

angularjs数据绑定w侦听器

angularjs数据绑定w侦听器,angularjs,angularjs-controller,Angularjs,Angularjs Controller,我正在尝试验证电子邮件字段,方法是通过检查用户是否输入了有效的电子邮件 /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i 在标准JS中,我会使用和事件侦听器来知道用户何时触发了键控,但在Angular中,我怀疑有不同的方式通过“双向数据绑定”来侦听数据。如何通过angular controller js完成相同的任务?查看输入[电子邮件],angular的验证: 有一个ng

我正在尝试验证电子邮件字段,方法是通过检查用户是否输入了有效的电子邮件

/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i

在标准JS中,我会使用和事件侦听器来知道用户何时触发了
键控
,但在Angular中,我怀疑有不同的方式通过“双向数据绑定”来侦听数据。如何通过angular controller js完成相同的任务?

查看输入[电子邮件],angular的验证:


有一个ngChange选项。

看看输入[电子邮件],angular的验证:


有一个ngChange选项。

有一个东西叫做$watch,或watchers。你可以让它“倾听”正在改变的模型

scope.$watch('name', function(newValue, oldValue) {
scope.counter = scope.counter + 1;
});

所以在这个例子中,每当模型“name”改变时,计数器就会上升1。您可以看到传递的其他参数,oldVal和newVal,您可以相互交叉引用这些参数,如果有新的值,您可以设置执行此操作的逻辑,但这是您自己的决定。只需将Regex检查放在这个函数中,并将字段的模型从name更改为任意名称*确保它在正确的控制器中。^ ^。

有一个叫做$watch或watchers的东西。你可以让它“倾听”正在改变的模型

scope.$watch('name', function(newValue, oldValue) {
scope.counter = scope.counter + 1;
});

所以在这个例子中,每当模型“name”改变时,计数器就会上升1。您可以看到传递的其他参数,oldVal和newVal,您可以相互交叉引用这些参数,如果有新的值,您可以设置执行此操作的逻辑,但这是您自己的决定。只需将Regex检查放在这个函数中,并将字段的模型从name更改为任意名称*确保它位于正确的控制器^ ^。

我至少可以想到3种方法,但是既然您提到了
keyup
,也许您可以试试这个?如何使用
input type=“email”
,让Angular通过其标准表单验证框架为您实现这一点?你在重新发明轮子。我至少可以想出3种方法,但既然你提到了
keyup
,也许你可以试试这个?如何使用
input type=“email”
,让Angular通过其标准表单验证框架为您实现这一点?你在重新发明轮子。这看起来不错,但为什么你会这样想呢?”user@m“是否为有效的电子邮件地址?我在根据的示例中尝试了它,它确实是有效的。嗯,与此同时,我正在使用您的解决方案,并附带了
data ng pattern=“/^[[u a-z0-9]+(\.[u a-z0-9]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/”
这看起来不错,但为什么要思考user@m“是否为有效的电子邮件地址?我在根据的示例中尝试了它,它确实有效。嗯,与此同时,我正在使用您的解决方案,并附带
data ng pattern=“/^[[u a-z0-9]+(\.[u a-z0-9]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4}$/”