下面的代码安静在浏览器中正常工作。
这是我的.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
答案 0 :(得分:6)
您需要以这种方式访问formControl:
myForm.controls['firstname']
将您的p标签更改为:
<p *ngIf="myForm.controls['firstname'].errors && myForm.controls['firstname'].dirty ">