错误类型错误:无法读取未定义角度4的属性“无效”

时间:2017-10-01 07:27:28

标签: angular typescript

我在Angular 4中收到以下错误:

  

错误类型错误:无法读取未定义

的属性“无效”

以下是代码:

<form name="form"  #f="ngForm" novalidate>

  <tr>
     <td width="10%" class="text-blue"></td> 
     <td><input type="text"  name="bankname" maxlength="25" appRestrictinput ="words" [(ngModel)]="model.bk_name" #bk_name="ngModel"  class="form-control" autofocus  /> </td>
  </tr>
  <div *ngIf="bankname.invalid && (bankname.dirty || bankname.touched)" class="alert alert-danger">
     <div *ngIf="bankname.errors.required">Name is required</div>
  </div>

</form>

请让我知道我哪里出错了。提前谢谢。

3 个答案:

答案 0 :(得分:13)

视图中的控件参考是bk_name。将bankname替换为bk_name

<div *ngIf="bk_name.invalid && (bk_name.dirty || bk_name.touched)" class="alert alert-danger">
<div *ngIf="bk_name.errors.required">Name is required.</div>

答案 1 :(得分:1)

在ts文件中添加:

get bk_name() { return this.form.get('bk_name');}

答案 2 :(得分:0)

您只是忘记了模板变量

将此添加到您的输入#bankname =“ ngModel” 中,它将与您一起使用

<input ngModel name="bankname" type="text" #bankname="ngModel" class="form-control" placeholder="Name" required> <br/>

<div class="alert alert-danger" *ngIf="bankname.invalid">bankname is required</div>