Angular,显示Model.ID大于0时显示FormGroup



我有一个formGroup实例,需要在" model.ID> 0"时使用formControlname属性显示输入,否则显示没有该属性的输入。

但是,当我这样做时,我会遇到一个错误" formGroup期望一个formgroup实例。请传递一个。"

如何解决这个问题?

<form [formGroup]="form">
<div class="margin_bottom__25">
  <div class="form-group row">
    <label for="legalName" class="col-sm-2 form-control-label">{{'STRUCTURES_AND_BRANCHES.branch.branch' | translate}}</label>
    <div class="col-sm-4">
      <span class="form-content" *ngIf="!stateVM.isLegalNameEditable">{{model.legalName}}</span>
      <input *ngIf="stateVM.isLegalName" formControlName="legalName" id="legalName" name="legalName" type="text" class="form-control"
        placeholder="{{'STRUCTURES_AND_BRANCHES.branch.branch_tab.basic_details.legalName_placeholder' | translate}}">
      <input *ngIf="model.id < 1" name="legalName" type="text" class="form-control"
             placeholder="{{'STRUCTURES_AND_BRANCHES.branch.branch_tab.basic_details.legalName_placeholder' | translate}}">
    </div>
    <div class="col-sm-6">
      <div *ngIf="!stateVM.isLegalNameEditable">
        <button [elementAccess]="FormEnum.HeadquarterAndBranch" class="btn btn-purple pull-right" (click)="toggleLegalNameEdit()">
          <i aria-hidden="true" class="fa fa-pencil"></i>
          <span>{{'STRUCTURES_AND_BRANCHES.branch.edit_btn' | translate}}</span>
        </button>
      </div>
      <div *ngIf="stateVM.isLegalNameEditable">
        <button class="btn btn-purple pull-right" [disabled]="!form.controls['legalName'].valid" (click)="onLegalNameSave()">{{'STRUCTURES_AND_BRANCHES.branch.save_btn' | translate}}</button>
        <button class="btn btn-light-gray margin_right__5 pull-right" (click)="onCancelLegalName()">{{'STRUCTURES_AND_BRANCHES.branch.cancel_btn' | translate}}</button>
      </div>
    </div>
  </div>
</div>
</form>

尝试使用此。

[hidden]="model.id == 0"

*ngif如果false会从dom

中删除元素

[隐藏]如果true将将显示器设置为CSS

中的显示

最新更新