[英]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.