我正在使用 Angular 2。数字字段的必填字段验证器显示不确定的行为。在编辑模式下,即使它包含值,它也会显示必填字段错误。
我的html代码:
<input type="number" placeholder="Enter Pincode" [formControl]="formLocation.controls['Pincode']" class="form-control error" (input)="objLocationDetails.LocationPincode=Pincode.value" value="{{objLocationDetails.LocationPincode}}" #Pincode/>
<div *ngIf="objLocationDetails.LocationPincode=='' ||(formLocation.controls['Pincode'].hasError('required') &&
formLocation.controls['Pincode'].touched)" class="alert alert-danger">
Please enter pincode
</div>
和打字稿代码:
private InitialiseFormControls(): void {
this.formLocation = this.formBuilderRef.group({
'LocationName': [null, [Validators.required]],
'Address1': [null, [Validators.required]],
'Address2': [null],
'Pincode': [null,[Validators.required]]
});
调试后发现
(formLocation.controls['Pincode'].hasError('required')
此语句返回“true”,这就是为什么 Is 显示错误.. 但为什么会发生这种情况?