【发布时间】:2018-09-19 05:34:27
【问题描述】:
我是 Angular 6 的新手,在这里我想验证一个用户输入字段并根据给定的输入显示不同的错误消息。
在我的项目中,我使用 Angular Material 设计 UI。
我想做的是
- 如果用户单击保存按钮,则会显示错误消息“请输入您的 FName”。
- 如果用户触摸但未输入任何内容并单击保存按钮,则会显示错误消息 “请输入您的 FName”。
- 如果用户开始输入 char,则应显示错误消息 “需要最少 4 个字符”
- 一旦用户达到 15 个字符,它应该会显示一条错误消息“仅限最多 20 个字符”
- 如果用户输入任何特殊字符和空格以及其他输入错误消息,如“仅输入字母”
现在当输入不符合成功验证时它会变为红色。但我想在 formControl 中为每个验证显示一条错误消息。
这里我有一个垫输入字段。
<form [formGroup]="userAddressValidations" novalidate>
<mat-form-field appearance="outline" class="col-sm-6">
<mat-label>First Name</mat-label>
<input matInput formControlName="firstName">
</mat-form-field>
</form>
<button mat-raised-button class="continueBtnHeight" color="warn">
<span>Save</span>
</button>
Ts 文件
export class ButtonToggleOverviewExample {
userAddressValidations: FormGroup;
constructor(private formBuilder: FormBuilder) { }
ngOnInit() {
this.userAddressValidations = this.formBuilder.group({
firstName: ['', [Validators.required, Validators.minLength(4), Validators.maxLength(20), Validators.pattern('[a-zA-Z]+')]]
});
}
}
stackblitz:https://stackblitz.com/edit/angular-t1k1x6-skowwq?file=app%2Fbutton-toggle-overview-example.ts
谁能帮我解决这个问题。
【问题讨论】:
-
使用
mat-error
标签: angular typescript angular-material angular6