感谢所有帮助我的人。错误是没有呈现表单控件,因此我永远无法输入值,因此它是无效的
我有一个表单,我在其中检查表单是否无效。如果是,它应该停止应用程序,如果不做其他事情。但现在我的表单总是返回invalid=true,由于某种原因我找不到错误。有人能看看并告诉我出了什么问题吗
<form [formGroup]="form">
<input
formControlName="personNameField"
type="text"
placeholder="Bitte eingeben"
[ngClass]="{'error': personNameField.errors}"
></input>
</form>
带表单控制的ts文件:
form = this.builder.group({
personNameField: new FormControl('',
[Validators.required]),
});
检查表格是否有效的方法:
onSubmit() {
this.form.markAllAsTouched();
if (this.form.invalid) {
return true;
}
else{
return false;
}
-
您添加了
Validators.required
验证器,这意味着您必须在input
中输入文本,否则表单无效。 -
如果这不是错误,请在stackblitz上创建一个示例并共享链接
我刚刚复制粘贴了你的代码,它对我来说很好。
以下是工作代码:https://stackblitz.com