Angular表单一次只显示一个错误消息。
创始人
2024-10-23 09:01:16
0

在Angular中,可以使用ngIf指令来控制错误消息的显示。首先,创建一个FormGroup对象来管理表单控件和验证器。之后,为每个表单控件添加验证器,并将错误消息存储在一个错误对象中。最后,使用ngIf指令将错误消息与表单控件关联起来,只有在特定的错误条件下才显示错误消息。

以下是一个示例代码:

HTML模板:

Please enter a name.
Name should be at least 3 characters long.
Please enter an email.
Please enter a valid email.

Component代码:

import { Component, OnInit } from '@angular/core';
import { FormBuilder, FormGroup, Validators } from '@angular/forms';

@Component({
  selector: 'app-my-form',
  templateUrl: './my-form.component.html',
  styleUrls: ['./my-form.component.css']
})
export class MyFormComponent implements OnInit {
  myForm: FormGroup;
  
  constructor(private formBuilder: FormBuilder) { }

  ngOnInit() {
    this.myForm = this.formBuilder.group({
      name: ['', [Validators.required, Validators.minLength(3)]],
      email: ['', [Validators.required, Validators.email]]
    });
  }
  
  isErrorVisible(controlName: string, errorType: string): boolean {
    const control = this.myForm.get(controlName);
    return control.touched && control.hasError(errorType);
  }
}

在上述示例中,我们通过使用formGroup和formControlName属性来绑定表单控件和FormGroup对象。在模板中,我们使用*ngIf指令来根据特定的错误类型和控件的touched状态来显示错误消息。

在组件中,我们定义了一个isErrorVisible方法来检查特定控件的特定错误类型是否应该显示。该方法首先获取控件对象,然后检查控件的touched状态和特定错误类型是否存在,如果是,则返回true,表示应该显示错误消息。

这样,每个表单控件只会显示与其关联的一个错误消息,而不会同时显示多个错误消息。

相关内容

热门资讯

透视烘培!aa poker辅助... 透视烘培!aa poker辅助,AApoker透视软件总是有工具,八分钟教程(有挂存在)aa pok...
透视总结!wpk辅助哪里买,w... 透视总结!wpk辅助哪里买,wpk控制牌是真的吗(透视)果然有技巧(哔哩哔哩)1、下载好透视辅助下载...
透视策略!德普之星辅助软件,德... 透视策略!德普之星辅助软件,德普之星工具切实存在有插件,第2分钟教程(有挂教学)德普之星辅助软件能透...
一直以来!aapoker透视插... 一直以来!aapoker透视插件,微信小程序微乐破解器2024,揭幕透视(新版有挂)-哔哩哔哩1、首...
透视好友!pokemmo手机脚... 透视好友!pokemmo手机脚本辅助器,微乐贵阳足鸡麻将开挂,科普透视(今日头条)-哔哩哔哩poke...
透视积累!德普之星透视辅助软件... 透视积累!德普之星透视辅助软件下载,德普之星私人局总是是有透视,第3分钟教程(确实有挂)1、玩家可以...
透视手段!wpk辅助哪里买,W... 透视手段!wpk辅助哪里买,WPK有透视一直真的是有工具,7分钟教程(有挂透视)1、玩家可以在wpk...
这一现象值得深思!xpoker... 这一现象值得深思!xpoker辅助器,微乐自建房辅助软件功能,总结脚本(有挂解惑)-哔哩哔哩xpok...
透视绝活!wepoker软件辅... 透视绝活!wepoker软件辅助程序,WePoKer透视果然真的是有工具,8分钟教程(有挂秘诀)1、...
今日!wepoker好友房开挂... 今日!wepoker好友房开挂,微乐春天扑克开挂辅助插件,开挂脚本(有挂存在)-哔哩哔哩1、上手简单...