Angular 2:验证器、响应式表单、表单生成器和自定义 类
Angular 2 : Validators, ReactiveForms, FormBuilder and custom classes
假设你有这个 class
export class User {
username = '';
password = '';
}
当你制作反应式表格时,你可以这样做
this.userForm = this.fb.group({
username: ''
password: ''
});
或者,第二种方式
this.userForm = this.fb.group(new User());
我的问题来自第二种方式:当您使用第一种方式时,您可以像这样将 Validators 添加到您的控件中
username: ['', Validators.required],
password: ['', Validators.required]
但是对于第二种方式,如何将验证器添加到表单控件中?
尝试
let control = this.form.controls["username"];
let newValidators = Validators.compose([Validators.required, Validators.minLength(8), Validators.maxLength(255)])
control.setValidators(newValidators);
control.updateValueAndValidity();
假设你有这个 class
export class User {
username = '';
password = '';
}
当你制作反应式表格时,你可以这样做
this.userForm = this.fb.group({
username: ''
password: ''
});
或者,第二种方式
this.userForm = this.fb.group(new User());
我的问题来自第二种方式:当您使用第一种方式时,您可以像这样将 Validators 添加到您的控件中
username: ['', Validators.required],
password: ['', Validators.required]
但是对于第二种方式,如何将验证器添加到表单控件中?
尝试
let control = this.form.controls["username"];
let newValidators = Validators.compose([Validators.required, Validators.minLength(8), Validators.maxLength(255)])
control.setValidators(newValidators);
control.updateValueAndValidity();