如何在离子2中的表单上显示错误消息

时间:2017-01-09 07:57:13

标签: forms validation angular ionic2

下面的代码安静在浏览器中正常工作。

这是我的.html

 <ion-item>
   <ion-label primary floating>FIRST NAME</ion-label>
   <ion-input type="text" id="firstname" class="form-control" formControlName="firstname"></ion-input>
 </ion-item>

 <p *ngIf="myForm.controls.firstname.errors && myForm.controls.firstname.dirty ">
    <small class="up">
      <strong> <i> Min 3 chars</i></strong>
    </small>
 </p>

这是我的.ts文件

this.myForm =  new FormGroup({
            'firstname'      : new FormControl('',[Validators.required,Validators.minLength(3),Validators.maxLength(10)]),
            'lastname'       : new FormControl('', [Validators.required,Validators.minLength(1),Validators.maxLength(10)]),
            'useridphone'    : new FormControl('', [Validators.required,Validators.minLength(10),Validators.maxLength(10)]),
            'password'       : new FormControl('',Validators.compose([Validators.required,Validators.minLength(4),Validators.maxLength(25),
                               Validators.pattern(this.passwordRegex)])),
            'confirmpassword': new FormControl('',Validators.required),
            'email'          : new FormControl( '', Validators.compose([ Validators.required, Validators.pattern(this.emailRegex) ]) )
    })

当我尝试构建我的项目(`ionic build android')时,我在下面遇到错误

  

属性'firstname'在类型'{[key string]上不存在:AbstractControl; }”。

这是我的ionic info

Cordova CLI: 6.3.0 
Ionic Framework Version: 2.0.0-rc.3
Ionic CLI Version: 2.1.14
Ionic App Lib Version: 2.1.7
Ionic App Scripts Version: 0.0.45
ios-deploy version: Not installed
ios-sim version: Not installed
OS: Linux 4.4
Node Version: v6.0.0
Xcode version: Not installed

1 个答案:

答案 0 :(得分:6)

您需要以这种方式访问​​formControl:

myForm.controls['firstname']

将您的p标签更改为:

<p *ngIf="myForm.controls['firstname'].errors && myForm.controls['firstname'].dirty ">