在div中显示表单控件值

时间:2019-03-20 17:05:00

标签: angular rxjs angular-material angular-forms

我有一个角反应嵌套形式。

this.productsForm = new FormGroup({
        "products": this.productFormArray
      });
    });
  }

  getProducts() {
    var ctrls = (<FormArray>this.productsForm.get('products')).controls;
    return ctrls;
  }

我正在迭代表单数组并成功在输入中设置值

<div form [formGroup]="productsForm" >
<table formArrayName="products">
    <tr *ngFor="let element of getProducts(); let i=index"  [formGroupName]="i">
    <td>
    <input formControlName="productCode" />
    <span formControlName="productCode">{{element.productCode}}</span>
    </td>
    </tr>
</table>
</div>

但是,我无法在跨度中设置相同的值。有艾米的方法吗?

1 个答案:

答案 0 :(得分:0)

我通过遍历初始数组而不是表单来解决它。我只有输入的普通形式我会遍历表单。但是,这里我需要遍历数组。 因此,代替

<div form [formGroup]="productsForm" >
<table formArrayName="products">
    <tr *ngFor="let element of getProducts(); let i=index"  [formGroupName]="i">
    <td>
    <input formControlName="productCode" />
    <span formControlName="productCode">{{element.productCode}}</span>
    </td>
    </tr>
</table>
</div>

我正在使用:

<div form [formGroup]="productsForm" >
    <table formArrayName="products">
        <tr *ngFor="let element of dataSource; let i=index"  [formGroupName]="i">
        <td>
        <input formControlName="productCode" />
        <span formControlName="productCode">{{element.productCode}}</span>
        </td>
        </tr>
    </table>
    </div>

也许有人有更好的解决方案?