2017-05-08 39 views
2

考虑下面的代码片段一个FormGroup内:访问FormControl元素,而不是直接使用form.get

<input type="email" class="form-control form-control-lg" formControlName="email" placeholder="email">

反正是有,我可以在模板中使用此输入的值(不从。 ts文件)使用参考变量(例如),而不是使用form.get('email')...,会有什么好处吗?

回答

0

你可以在你的component文件中创建一个参考:

group: FormGroup; 
emailCtrl: FormControl; 
// other controls 

ngOnInit() { 
    this.emailCtrl = this.formBuilder.control(
    '', 
    [ 
     Validators.required, 
     Validators.email 
    ]); 

    this.group = this.formBuilder.group({ 
    email: this.emailCtrl 
    // other controls 
    }); 
} 

所以,在模板:

<form novalidate [formGroup]="group"> 
    <input type="email" placeholder="email" [formControl]="emailCtrl"> 
    email value = {{emailCtrl.value}} 
</form> 

DEMO

+0

谢谢,我希望我可以在引用该组件直接使用'formControlName'或其他属性的模板,但不必在我的组件中为它创建一个属性。 – Sammy

相关问题