Angular严格模式下破坏了邮箱表单字段上的CustomValidator。
创始人
2024-10-30 11:00:33
0

在模板驱动表单中,应该在FormControl内部添加CustomValidator函数,并返回一个对象来指示验证结果。但是,由于严格模式的一些限制,具有参数null的函数引用将被视为未定义,因此验证器无法正常工作。

要解决这个问题,可以使用lambda表达式来定义CustomValidator函数,并在validator属性中引用它。这可以确保函数不会被识别为未定义的。

以下是示例代码:

在组件类中定义CustomValidator:

export class MyComponent {
  myValidator = (): ValidatorFn => {
    return (control: AbstractControl): ValidationErrors | null => {
      const emailRegex = /\S+@\S+\.\S+/;
      const valid = emailRegex.test(control.value);
      return valid ? null : { invalidEmail: true };
    };
  }
}

将此ValidatorFn添加到email表单字段的验证器中:


注意:如果你正在使用响应式表单,则在FormControl上添加CustomValidator函数并不会受到严格模式的影响。但是,如果您在模板驱动的表单中使用CustomValidator,则应该采用上述解决方案。

相关内容

热门资讯

透视最新!aapoker能控制... 透视最新!aapoker能控制牌吗(透视)发牌逻辑(总是真的是有挂)1、每一步都需要思考,不同水平的...
透视脚本!哈糖大菠萝怎么挂,p... 透视脚本!哈糖大菠萝怎么挂,pokerworld软件(果然是有挂)1)哈糖大菠萝怎么挂辅助挂:进一步...
透视工具!aapoker辅助工... 透视工具!aapoker辅助工具安全吗(透视)辅助插件工具(一直真的有挂)1、用户打开应用后不用登录...
透视插件!xpoker辅助,佛... 透视插件!xpoker辅助,佛手在线有挂吗(一直是真的有挂)1、佛手在线有挂吗透视辅助简单,佛手在线...
透视模拟器!aapoker如何... 透视模拟器!aapoker如何设置胜率(透视)ai插件(其实是真的有挂);1、aapoker如何设置...
透视工具!cloudpoker... 透视工具!cloudpoker外挂,竞技联盟透视(一贯是真的有挂)1、竞技联盟透视机器人多个强度级别...
透视代打!aapoker安装包... 透视代打!aapoker安装包怎么使用(透视)免费透视脚本(确实是有挂);1)aapoker安装包怎...
透视中牌率!拱趴大菠萝作弊方法... 透视中牌率!拱趴大菠萝作弊方法,fishpoker透视(果然有挂);1、很好的工具软件,可以解锁游戏...
透视线上!智星菠萝辅助,拱趴大... 透视线上!智星菠萝辅助,拱趴大菠萝开挂方法(好像是真的有挂)1、每一步都需要思考,不同水平的挑战会更...
透视苹果版!aapoker透视... 透视苹果版!aapoker透视插件(透视)ai插件(好像真的是有挂)1、aapoker透视插件系统规...