如何在用Angular 9中的FormArray加载时使第一个复选框自动被检查

问题描述

一切顺利,我有两个用于FormArray的复选框,我希望在运行Aplication时自动检查/选中第一个复选框。请问该如何处理?请参阅下面的代码

 Checkboxform: FormGroup;
 checkboxValue: FormArray; 
 constructor(private formBuilder: FormBuilder) {
    this.Checkboxform = this.formBuilder.group({
      checkArray:this.formBuilder.array([])
    })
  }

 onCheckboxChange(e) {
    this.checkboxValue = this.Checkboxform.get('checkArray') as FormArray;
    if (e.target.checked) {
      this.checkboxValue.push(new FormControl(e.target.value));
    } else {
      let i: number = 0;
     this.checkboxValue.controls.forEach((item: FormControl) => {
        if (item.value == e.target.value) {
          this.checkboxValue.removeAt(i);
          return;
        }
        i++;
      });
    }
   // console.log(checkboxValue);
    console.log(this.checkboxValue)

}

我的Component.html看起来像这样

 <div class="col-md-8">
                                <div class="form-group">
                                   <h5>{{"Select Matching Criteria" | localize}} </h5>
                                   <form [formGroup]="Checkboxform" (ngSubmit)="submit()" >

                                    <div *ngFor="let data of Criteria; let i=index">
                                      <label>
                                        <input type="checkbox" [value]="data.id" 
                                       (change)="onCheckboxChange($event)" />
                                        {{data.category}}
                                      </label>
                                    </div>
                                    <button>submit</button>
                                  </form>
                                   
                                </div>

                            </div>

请为此提供帮助。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)