簡體   English   中英

如果選中該復選框,則檢查 ngOnInit

[英]Check in ngOnInit if the checkbox is checked

親愛的我有以下情況。 我在一個屏幕上有一些檢查,當我選擇一些時,它們會轉到另一個屏幕,只有我為另一個屏幕選擇的那些。 它停留在正確選擇的另一個屏幕上。 在此屏幕上使用按鈕時的問題是好像它沒有被選中。 僅當我再次單擊它們時它們才起作用。 有誰知道我如何捕獲他們被選中的信息,所以我不能放任何方法? 或者......它已經完成 ngFor 沒有 Id ,因為我在沒有標記的情況下呈現它們,因此用戶必須標記它並且將調用該方法

組件.html

  <form [formGroup]="form" >
  <p><b>Reactive Checkbox</b></p>

   <ul formArrayName="fruits">

     <li [formGroupName]="i" *ngFor="let item of form.controls?.fruits?.controls; let i = index">
       <input type="checkbox" formControlName="checked" />  {{fruits[i].name}}
     </li>

    </ul>
</form>

組件.ts

fruits:Array<any> = [
   { name: '🍓', checked: true },
   { name: '🍌', checked: false }
]

ngOnInit(): void {
  // build reactive form skeleton
  this.form = new FormGroup({
    // control for Checkbox exemple
    fruits: new FormArray([]),
  });
  // bind existing value to form control
  this._patchValues();
}

private _patchValues(): void {
  // get array control
  const formArray = this.form.get('fruits') as FormArray;
  // loop for each existing value
  this.fruits.forEach((fruit) => {
    // add new control to FormArray
    formArray.push(
      // here the new FormControl with item value from fruits
      new FormGroup({
        name: new FormControl(fruit.name),
        checked: new FormControl(fruit.checked),
      })
    );
  });
}

我從 Angular 開始。 但我使用@Output 和EventEmitter 解決了我的問題。 對不起,我不是很清楚。

暫無
暫無

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

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