簡體   English   中英

將值修補到 Angular 反應 forms 中的多個 formArray

[英]Patch value to multiple formArray in Angular reactive forms

無法修補 formGroup 中的多個 formArray。

形式

 this.usersForm = this.fb.group({
      users: this.fb.array([
        {
          firstName: [""],
          lastName: [""],
        }
      ]),
      work: this.fb.array([
        {
          workType: [""],
          workTitle: [""],
        }
      ]),
    });

我有多個這樣的 formArray,如何為它打補丁。 我嘗試了以下方法,但它使代碼過於冗余

const formArray = new FormArray([]);

    data.work.forEach((s) => {
      formArray.push(
        this.fb.group({
          workType: s.workType,
          workTitle: s.workTitle,
        })
      );
    });

this.usersForm.setControl("work", formArray);
//get form array control
let a = this.usersForm.get('work') as FormArray;

// push control in above form array
a.push(this.fb.group({
      workType: 'workType value',
      workTitle: 'workTitle value'
});

或者如果你想使用 patchValue 那么

this.usersForm.patchValue(your json);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM