【发布时间】:2017-12-28 10:46:05
【问题描述】:
我有以下表单组。
this.rForm = fb.group({
'categoryName': [null, Validators.required],
'categoryImage': [null, Validators.required],
'mainCategoryId': [null, Validators.required],
'subCategoryName': [null, Validators.required]
});
而“mainCategoryId”指的是一个下拉列表。当我更改该下拉菜单中的值时,根据该值,我想保留或删除“subCategoryName”的验证器。然后我在 ngOnInit() 中使用下面的代码。
this.rForm.get('mainCategoryId').valueChanges.subscribe(
(mainCategoryId) => {
if(!this.isSub){
this.rForm.get('subCategoryName').clearValidators();
this.rForm.get('subCategoryName').updateValueAndValidity;
}
}
);
它位于 IF 语句中,但不会删除验证器。仍然检查是否需要。我究竟做错了什么?我只是想删除所需的验证。
【问题讨论】:
标签: angular forms validation