как использовать * ngIf в отображении ввода с идентификатором - PullRequest
2 голосов
/ 04 марта 2020

Привет, ребята, я новичок в ioni c У меня есть проблема, как использовать * ngIf при отображении поля ввода

вот мой. html

<div *ngIf="project_group_id=1">

<ion-card>
  <ion-item no-lines>
      <ion-label color="primary">Phase No:</ion-label>
      <ion-select  formControlName="phase_id" placeholder="Select phase number" [(ngModel)]="qa_form.phase_id">

        <ion-option   value="{{phases.id}}" *ngFor="let phases of phase" name="phase_id">{{phases.phase_name}}</ion-option>

      </ion-select>
  </ion-item>
</ion-card>



<ion-card>
  <ion-item>
    <ion-label color="primary">Block No:</ion-label>
    <ion-input  formControlName="block_no"   name="block_no" type="number" text-right placeholder="Enter house block number" [(ngModel)]="qa_form.block_no"></ion-input>
  </ion-item>
</ion-card>


<ion-card>
  <ion-item>
    <ion-label color="primary">Lot No:</ion-label>
    <ion-input type="number"  formControlName="lot_no"  name="lot_no" text-right placeholder="Enter house lot number" [(ngModel)]="qa_form.lot_no"></ion-input> 
  </ion-item>
</ion-card>

</div>

<div *ngIf="project_group_id=2">

  <ion-card>
    <ion-item>
        <ion-label color="primary">Building No:</ion-label>
        <ion-select  formControlName="building_id"  name="building_id" placeholder="Select building number" [(ngModel)]="qa_form.building_id" >
          <ion-option value="1">Building 1</ion-option>
          <ion-option value="2">Building 2</ion-option>
          <ion-option value="3">Building 3</ion-option>
          <ion-option value="4">Building 4</ion-option>
          <ion-option value="5">Building 5</ion-option>
        </ion-select>
    </ion-item>
  </ion-card>
  <ion-card>
    <ion-item>
      <ion-label color="primary">Unit No:</ion-label>
      <ion-input type="number"  formControlName="unit_no"  name="unit_no" text-right placeholder="Enter house unit number" [(ngModel)]="qa_form.unit_no"></ion-input> 
    </ion-item>
  </ion-card>

</div>

если project_group_id равен 1, будет отображаться только здание и объект, а если для project_group_id задано значение 2, то только для lot_no, block_no, phase_no

Ответы [ 2 ]

0 голосов
/ 04 марта 2020

Я думаю, это зависит от типа сравнения, которое вы хотите сделать. Вам также нужны простые цитаты.

Если вы используете ==, перед сравнением данные преобразуются в тот же тип.

<div *ngIf="'project_group_id == 1'">
<div *ngIf="'project_group_id == 2'">

Если вы используете ===, это строгое сравнение (это верно только в том случае, если область данных одного типа и их значение одинаковое).

<div *ngIf="'project_group_id == 1'">
<div *ngIf="'project_group_id == 2'">
0 голосов
/ 04 марта 2020

Выражение внутри ngIf является подмножеством JavaScript выражений. А в JavaScript вам нужно использовать оператор == для сравнения двух значений, а не =.

<div *ngIf="project_group_id == 1">
<div *ngIf="project_group_id == 2">
...