我可以有条件地在Angular 2反应形式中实现验证。我有3个formControl字段的反应形式一个是选择,另外两个是名字和姓氏的输入文本。我希望有条件地根据第一个字段'validateBy'的选择来实现名字和姓氏的验证。如果用户选择'byFirstName',则只应验证firstName。如果用户选择“byLastName”,则只应验证lastName。如果用户选择“byBoth”,则应验证firstName和lastName。我为此创造了一个蹲点。只有通过两个验证的作品。有条件地在Angular 2反应形式的表单域中实现验证
ngOnInit() {
this.myForm = this._fb.group({
validateBy: ['byFirstName'],
firstName: ['', isFirstNameValid(() => (this.validateBy === 'byFirstName' || this.validateBy === 'byBoth'),
Validators.required)],
lastName: ['', isLastNameValid(() => (this.validateBy === 'byLastName' || this.validateBy === 'byBoth'),
Validators.required)],
});
https://plnkr.co/edit/X0zOGf?p=preview
工作,你可以,如果你编写自定义指令验证 –