Validation Angular 2自定义验证程序运行两次
为了调试的目的,我使用了下面的代码。emailForCloudUserValidator在单个Ngonit运行上运行两次,并将两条消息记录到控制台Validation Angular 2自定义验证程序运行两次,validation,angular,Validation,Angular,为了调试的目的,我使用了下面的代码。emailForCloudUserValidator在单个Ngonit运行上运行两次,并将两条消息记录到控制台 ngOnInit(){ this.contactControlGroup = this.formBuilder.group({ email:[this.contact.email, this.emailForCloudUserValidator] }); this.formControls = this.contactContro
ngOnInit(){
this.contactControlGroup = this.formBuilder.group({
email:[this.contact.email, this.emailForCloudUserValidator]
});
this.formControls = this.contactControlGroup.controls;
}
private emailForCloudUserValidator(control: Control) : { [s: string]: boolean }{
if(!control.value){
console.log("email value is null");
}
return;
}
在
bootstrap()
之前调用enableProdMode()
应该可以解决这个问题:
import {enableProdMode} from "angular2/core";
enableProdMode();
默认情况下,Angular2在
devMode
中运行,其中更改检测始终运行两次,以检查指示应用程序中存在错误的模型不稳定性(这会产生错误消息表达式“xxxx”在检查后已更改
)@misshap那么我猜这是对null
的首次运行,然后当值更改为this.contact.email
@misshap时再次运行。我还没试过。所以我什么都不能说。我说谢谢,因为我不知道这个信息。无法复制您的问题。你能提供一份详细的报告吗?