我正在尝试使用类型集中验证消息。 假设表单是原始的或未修改的,即当用户提交表单但不触摸该字段时,这是预设的。我只想显示姓名,而电子邮件仅是邮件
我添加了提交的布尔值以弄清楚,但是ngIf总是评估为false
validationCondition(type: string, controlName: string): boolean {
return this.myForm.get(`${controlName}`).hasError(`${type}`) &&(this.myForm.get(`${controlName}`).touched || this.myForm.get(`${controlName}`).dirty);
}
在这里我们可以做些什么,但我不知道该怎么处理才能与提交一起工作
链接:https://stackblitz.com/edit/angular-tiey4d
我希望看到用户提交表单而不触摸任何字段时,姓名是必需的,而电子邮件是必需的。我也想在输入字段或从字段离开时看到验证消息。
答案 0 :(得分:1)
只需onSubmit
onSubmit() {
if (!this.myForm.valid) //if not valid
{
this.submitted = true // because you put the condition "if submitted"
this.myForm.markAllAsTouched() //mark all the controls as touched
}else
{
console.log(this.myForm.value)
}
}
答案 1 :(得分:0)
您可以检查表单中根obj中的此布尔值是否有错误。
this.myForm.invalid