在材料表的下拉列表中重复了角度6和角度材料值

时间:2018-09-12 07:08:02

标签: angular angular-material angular6

我正在从数据库中获取值以将其显示在物料表上。其中一个值应显示在下拉列表中,以便可以更改。

问题在于,除了应该在下拉列表中显示的所有值外,所有值都正确显示在mat-table cells内,在下拉列表中,仅正确显示了返回的第一行的第一个值,而其他值被设置了等于第一个。

这是我的代码:

<ng-container matColumnDef="status">
      <th mat-header-cell *matHeaderCellDef mat-sort-header>Status</th>
      <td mat-header *matCellDef="let row">

        <mat-form-field>
          <form [formGroup]="sitStatus">
            <mat-select formControlName="sitStatus" placeholder="">
              <mat-option [value]="row.unit_situation_legal_protection_status">{{row.unit_situation_legal_protection_status}}</mat-option>
              <mat-option *ngIf="row.unit_situation_legal_protection_status!='Active'" value="Active">Active</mat-option>
              <mat-option *ngIf="row.unit_situation_legal_protection_status!='Inactive'" value="Inactive">Inactive</mat-option>
            </mat-select>
          </form>
        </mat-form-field>

   </td>
</ng-container>

返回成功结果时,我正在函数内部创建组表单:

this.dataSource = new MatTableDataSource(Object.values(data['situation_info']));
this.dataSource.paginator = this.paginator;
this.dataSource.sort = this.sort;
this.showSpinner = false;
this.sitStatus = this.fb.group({
          'sitStatus': new FormControl( data['situation_info'][0]['unit_situation_legal_protection_status'], [Validators.required])
        })

data['situation_info'][0]['unit_situation_legal_protection_status']是我要在下拉列表mat-select中显示的字段。

结果如下:

enter image description here

蓝色显示的值应为Active,而不是Inactive

0 个答案:

没有答案