Angular 反应形式,确认电子邮件无效
Angular reactive form, confirm email is not working
我正在使用 Angular 反应形式。我实施了电子邮件并确认电子邮件。电子邮件输入按预期工作,但确认电子邮件不是。下面是 link 到 stackblitz。我找不到我哪里做错了
您的验证器对象是相对于 userData
FormGroup 定义的,而不是整个 signupForm
。这意味着 emailMismatch
错误将存在于 userData
对象上 - 您正在检查 signupForm
.
这是您的原始代码:
get isEmailMismatch() {
return this.signupForm.getError('emailMismatch');
}
应该是:
get isEmailMismatch() {
return this.signupForm.controls.userData.getError('emailMismatch');
}
请注意,我们在这里更深入了一层(到 userData
)来查找错误。
工作 stackblitz --> https://stackblitz.com/edit/angular-email-checker-4ypbn5?file=app/app.component.ts
这是 stackblitz
上编辑后的工作代码
您的验证器工作正常。
您只需要将 type="submit"
添加到您的提交按钮
我正在使用 Angular 反应形式。我实施了电子邮件并确认电子邮件。电子邮件输入按预期工作,但确认电子邮件不是。下面是 link 到 stackblitz。我找不到我哪里做错了
您的验证器对象是相对于 userData
FormGroup 定义的,而不是整个 signupForm
。这意味着 emailMismatch
错误将存在于 userData
对象上 - 您正在检查 signupForm
.
这是您的原始代码:
get isEmailMismatch() {
return this.signupForm.getError('emailMismatch');
}
应该是:
get isEmailMismatch() {
return this.signupForm.controls.userData.getError('emailMismatch');
}
请注意,我们在这里更深入了一层(到 userData
)来查找错误。
工作 stackblitz --> https://stackblitz.com/edit/angular-email-checker-4ypbn5?file=app/app.component.ts
这是 stackblitz
上编辑后的工作代码您的验证器工作正常。
您只需要将 type="submit"
添加到您的提交按钮