根据某些条件动态应用 Angular 4 验证

Apply Angular 4 validation dynamically on the basis of some conditions

我想根据某些条件动态应用 Angular 4 验证,我使用的是 Reactive 表单。这是我的场景,

我有一个单选按钮:像这样:A: yes B: no 如果用户 select "yes" 那么一个文本框(formControlName="your_name") 将显示,用户可以在其中添加他的名字。 所以,我想添加动态验证,比如如果用户 select "yes" 来自无线电而不是 "your_name" 应该是必填字段,否则不是。

那么我怎样才能在这里添加动态验证:

fb.group({
    your_name':['',Validators.required]
});

您可以使用 setValidators() 设置验证器。选中单选按钮后,通过

设置验证器

this.your_form_name.controls["your_control_name"].setValidators(Validators.required);