下面的代码和平在浏览器中工作正常。
这是我的.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) ]) )
})
当我尝试构建我的项目("离子构建安卓")时,我在下面出现错误
属性 '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
您需要通过以下方式访问 formControls:
myForm.controls['firstname']
将 p 标签更改为:
<p *ngIf="myForm.controls['firstname'].errors && myForm.controls['firstname'].dirty ">