我的表单中有一个电子邮件字段,该字段已经过验证,不会为空且有效的电子邮件。代码如下(请参阅plunker - Angular 1.3.0-beta.13
):
<form name="myForm" novalidate>
<input type="email" name="email" ng-model="email" required>
<span ng-show="myForm.email.$error.required">Missing Email</span> |
<span ng-show="myForm.email.$error.email">Invalid Email</span>
<pre>myForm.email.$error: {{ myForm.email.$error | json }}</pre>
</form>
启动时,只会显示“Missing Email”消息,如预期的那样。当我开始输入输入时,即使字段不为空,也会显示Missing Email
和Invalid Email
消息!这不是预期的。
输入有效的电子邮件时,两个错误都会按预期消失:
从有效的电子邮件状态变为无效的电子邮件状态(通过删除字符)时,只会显示无效的电子邮件消息,如预期的那样:
似乎角度在第一次验证违规时停止,使$ error对象处于陈旧状态。
这是框架中的错误吗?我在这里错过了什么吗?