我只想在用户离开字段(onblur)时才开始验证表单的字段。

我正在尝试以这种方式:

    this.profileForm = this.fb.group({
                firstName: ['initial value',
                    [Validators.required, Validators.minLength(2), forbiddenNameValidator(/bob/i)],
                    [forbiddenNameValidatorAsync()],
                    { updateOn: 'blur' }
                ],
                lastName: ['b']
            });


但是这种方式是行不通的。
验证(同步和异步)在onChange期间执行。

我还想问一下如何通过检查lastName来验证名称。

示例:如果姓名字段与姓氏相同(仅姓名字段,不是整个表单,不是两个字段),则希望禁用该字段。

最佳答案

将参数设置为AbstractControlOptions

    firstName: ['initial value',{
         validators: [Validators.required, Validators.minLength(2), forbiddenNameValidator(/bob/i)],
         asyncValidators: [forbiddenNameValidatorAsync()],
         updateOn: 'blur'
    }],
此处的示例https://stackblitz.com/edit/angular-hdna17?file=src%2Fapp%2Fhello.component.ts

关于angular - 在Angular react 形式中使用updateOn: 'blur',我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52167148/

10-11 11:27