0

我正在使用 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 显示错误.. 但为什么会发生这种情况?

4

1 回答 1

0
    private InitialiseFormControls(): void {
     this.formLocation = this.formBuilderRef.group({
     'LocationName': [null, [Validators.required]],
     'Address1': [null, [Validators.required]],
     'Address2': [null],
     'Pincode': ["",[Validators.required]] });

使用空字符串代替 null。

于 2017-07-10T05:30:24.730 回答