Angular2:如何访问Component.ts中的表单验证字段

Gri*_*yan 2 validation angular2-forms angular

例如,我有一个表单(不是FormGroup),视图看起来像这样

<form #f="ngForm" novalidate>
     <label>Email</label>
     <input type="email" [(ngModel)]="player.email" class="form-control" name="email" #email="ngModel" required>

     <!-- with #email code, now, in view, I have variable with name email!!! -->
</form>
Run Code Online (Sandbox Code Playgroud)

使用#email标记我声明一个名为'email'的变量,并且使用此变量我可以检查验证错误.例如

 <div [hidden]="email.valid || email.pristine"
               class="alert alert-danger">
            email is required
 </div>
Run Code Online (Sandbox Code Playgroud)

如何在组件类中访问此变量?

ran*_*al9 5

您必须通过在组件中声明ViewChild来使用它:

export class MyCompoment {
  @ViewChild('email') email: ngModel;

  ngOnInit(){
    console.log(this.email);
  }
}
Run Code Online (Sandbox Code Playgroud)