Angular响应式表单自定义验证未在触摸时触发。
创始人
2024-10-30 08:30:14
0

这通常是因为表单控件未被标记为“已触摸”。为了解决这个问题,您可以手动标记表单控件为“已触摸”,以便触发自定义验证。 下面是一个示例,其中验证函数“myCustomValidator”将在触摸表单控件时触发:

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 fb: FormBuilder) {}

  ngOnInit(): void {
    this.myForm = this.fb.group({
      email: ['', [Validators.required, Validators.email]]
    });
  }

  // 自定义验证函数
  myCustomValidator(controlName: string) {
    const control = this.myForm.get(controlName);
    // 检查表单控件是否被触摸
    if (control.touched && control.errors) {
      // ... 做出你的自定义验证逻辑 ...
      return { myCustomError: true };
    } else {
      return null;
    }
  }
}

在模板中,您需要手动标记表单控件为“已触摸”:

请填写电子邮件地址。

电子邮件地址格式不正确。

自定义验证错误。

相关内容

热门资讯

必备教程“闲逸亲友圈辅助下载”... 必备教程“闲逸亲友圈辅助下载”开挂(透视)辅助平台必备教程(有挂细节)您好:闲逸亲友圈辅助下载这款游...
新手必备“阿拉游戏中心辅助软件... 新手必备“阿拉游戏中心辅助软件免费下载”开挂(透视)辅助工具微扑克教程(的确有挂) 了解更多开挂安装...
透视软件“闲逸游戏修改器”开挂... 【亲,闲逸游戏修改器 这款游戏可以开挂的,确实是有挂的,很多玩家在这款闲逸游戏修改器中打牌都会发现很...
玩家必看科普“闲逸碰胡辅助”开... 玩家必看科普“闲逸碰胡辅助”开挂(透视)辅助软件微扑克教程(有挂教程);打开点击测试直接进入微信(1...
玩家交流“福州十八扑外卦视频”... 玩家交流“福州十八扑外卦视频”开挂(透视)辅助下载软件教程(真的有挂);无需打开直接搜索打开薇:13...
分享一款“微乐小程序自建房插件... 您好:微乐小程序自建房插件怎么安装这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现...
透视美元局“财神十三张安装工具... >>您好:财神十三张安装工具确实是有挂的,很多玩家在这款财神十三张安装工具游戏中打牌都会发现很多用户...
今日公布“来来拼十辅助免费辅助... >>您好:来来拼十辅助免费辅助确实是有挂的,很多玩家在这款来来拼十辅助免费辅助游戏中打牌都会发现很多...
玩家实测“中至南昌辅助工具”开... 玩家实测“中至南昌辅助工具”开挂(透视)辅助安装系统教程(有挂实锤)《详细加薇136704302咨询...
实操分享“哈局十三张元华辅助”... 哈局十三张元华辅助是一款可以让一直输的玩家,快速成为一个“必胜”的ai辅助神器,有需要的用户可以加我...