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;
    }
  }
}

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

请填写电子邮件地址。

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

自定义验证错误。

相关内容

热门资讯

总算清楚!约局吧游戏挂,wep... 总算清楚!约局吧游戏挂,wepoker买脚本靠谱吗,存在挂教程(一贯是有挂的)-哔哩哔哩;详细wep...
透视插件!如何下载德普之星辅助... 【福星临门,好运相随】;透视插件!如何下载德普之星辅助软件,德普之星私人局辅助器,必赢教程(一直有挂...
科技通报!wpk俱乐部有没有辅... 科技通报!wpk俱乐部有没有辅助,aapoker怎么选牌,攻略方法(一贯是有挂的)-哔哩哔哩;wpk...
记者发布!sohoo辅助,德普... 记者发布!sohoo辅助,德普之星透视软件免费入口官网,可靠技巧(果然确实有挂)-哔哩哔哩;亲,有的...
最新通报!拱趴大菠萝辅助方法,... 【福星临门,好运相随】;最新通报!拱趴大菠萝辅助方法,wepokerplus开挂,AI教程(其实确实...
一分钟教会你!aapoker发... 一分钟教会你!aapoker发牌逻辑,wpk辅助器是真的吗,教你攻略(原来有挂)-哔哩哔哩;1、让任...
透视真的!aapoker透视脚... 透视真的!aapoker透视脚本入口,hhpoker透视方法,黑科技教程(一直是有挂的)-哔哩哔哩;...
透视私人局!cloudpoke... 透视私人局!cloudpoker辅助,wpk是真的还是假的,高科技教程(果然有挂)-哔哩哔哩;小薇(...
重大科普!wepoker辅助器... 重大科普!wepoker辅助器是真的吗,we-poker有人玩吗,微扑克教程(原来真的有挂)-哔哩哔...
透视讲解!德州hhpoker脚... 透视讲解!德州hhpoker脚本,xpoker辅助神器,揭秘教程(原来有挂)-哔哩哔哩;致您一封信;...