Angular响应式表单控件数字和字母模式验证器验证无效。
创始人
2024-10-30 06:31:11
0

在Angular中,可以使用自定义验证器来验证表单控件的输入。以下是一个示例,演示如何使用自定义验证器来验证表单控件的数字和字母模式。

首先,创建一个名为customValidators.ts的新文件,并添加以下代码:

import { AbstractControl, ValidatorFn } from '@angular/forms';

export function patternValidator(pattern: RegExp): ValidatorFn {
  return (control: AbstractControl): { [key: string]: any } | null => {
    const valid = pattern.test(control.value);
    return valid ? null : { pattern: { value: control.value } };
  };
}

接下来,打开你想要应用验证器的组件,并在import部分添加以下代码:

import { patternValidator } from './customValidators';

然后,在组件类中创建一个表单,并在需要验证的表单控件上应用自定义验证器。例如,假设你有一个表单,并且你想要验证一个名为username的输入字段,使其只接受字母和数字的组合。在组件类中,添加以下代码:

import { FormGroup, FormControl, Validators } from '@angular/forms';

export class YourComponent {
  form: FormGroup;

  constructor() {
    this.form = new FormGroup({
      username: new FormControl('', [
        Validators.required,
        patternValidator(/^[A-Za-z0-9]+$/)
      ])
    });
  }
}

在上面的代码中,我们首先导入了FormGroupFormControlValidators类。然后,在构造函数中,我们创建了一个form对象,并在其中创建了一个username控件。我们使用了Validators.required来确保输入字段不为空,并使用了patternValidator来验证输入字段的内容是否符合指定的模式。

最后,在HTML模板中,你可以使用form对象来访问表单控件和验证器的状态。例如:

Username is required
Invalid username format

在上面的代码中,我们使用了formControlName指令来绑定username输入字段,并使用了form.get('username').errors来获取验证器的错误信息。

相关内容

热门资讯

研究成果!微信边锋干橙眼辅助,... 研究成果!微信边锋干橙眼辅助,浙江宝宝游戏辅助,必看开挂辅助教程(发现有挂);无需打开直接搜索薇:1...
分享实测!榆林打锅子辅助器,微... 分享实测!榆林打锅子辅助器,微信微乐游戏辅助脚本,传授开挂辅助教程(真的有挂);无需打开直接搜索打开...
一分钟了解!闲来辅助神器怎么下... 一分钟了解!闲来辅助神器怎么下载,赣牌圈破解器,分享开挂辅助教程(有挂讲解);无需打开直接搜索打开薇...
玩家实测!微乐自建房脚本免费下... 玩家实测!微乐自建房脚本免费下载,三江互娱辅助,教会开挂辅助教程(有挂工具);无需打开直接搜索加(薇...
分享一款!广东潮汕雀友会插件,... 分享一款!广东潮汕雀友会插件,金杯竞技辅助,教会开挂辅助教程(有挂技巧);无需打开直接搜索加薇136...
每日必看!奇迹陕西游戏辅助,小... 每日必看!奇迹陕西游戏辅助,小闲川南手游辅助器,发现开挂辅助教程(有挂技术);无需打开直接搜索薇:1...
必备辅助推荐!朋友局辅助器,对... 必备辅助推荐!朋友局辅助器,对战互娱辅助,分析开挂辅助教程(有挂攻略);无需打开直接搜索打开薇:13...
今日科普!逍遥孝感卡五星辅助,... 今日科普!逍遥孝感卡五星辅助,微信小程序财神十三脚本,细节开挂辅助教程(有挂功能);无需打开直接搜索...
必知教程!赣湘互娱透视挂,情怀... 必知教程!赣湘互娱透视挂,情怀宜春辅助,教会开挂辅助教程(有挂技巧)1、下载安装好赣湘互娱透视挂,进...
分享个大家!微乐智能辅助软件是... 分享个大家!微乐智能辅助软件是真的吗,红茶楼互娱辅助,曝光开挂辅助教程(有挂辅助);无需打开直接搜索...