我正在使用角度2.Required字段验证器显示不确定行为的数字字段。在编辑模式下,它显示必需的字段错误,即使它包含值。
我的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')
此声明返回&#39; true&#39;这就是为什么显示错误..但为什么会发生这种情况?
答案 0 :(得分:0)
private InitialiseFormControls(): void {
this.formLocation = this.formBuilderRef.group({
'LocationName': [null, [Validators.required]],
'Address1': [null, [Validators.required]],
'Address2': [null],
'Pincode': ["",[Validators.required]] });
使用空字符串代替null。