私は、ユーザーが受信したい雑誌購読を編集したいという形をしています。コードは以下の通りである:Angular 2 RC5のチェックボックスグループの処理方法は?
コンポーネント:
export class OrderFormComponent {
subscriptions = [
{id: 'weekly', display: 'Weekly newsletter'},
{id: 'monthly', display: 'Monthly newsletter'},
{id: 'quarterly', display: 'Quarterly newsletter'},
];
mySubs = [
this.subscriptions[1]
]
order = new FormGroup({
subs: new FormArray(this.mySubs.map(sub => new FormControl(sub)), Validations.required) //Lost at this part
});
}
テンプレート:私はアプリを実行すると
<form [formGroup]="order">
<div formArrayName="subs">
<label>Sign me up for newsletters</label>
<p *ngFor="let s of subscriptions; let i=index">
<input type="checkbox" [value]="s.id" [formControlName]="i" /> {{ s.display }}
</p>
</div>
<div>
<input type="checkbox" formControlName="agree" /> I agree to the terms and conditions.
</div>
{{ order.value | json }}
、3つのチェックボックスが表示されますが、一つだけがチェックされている(間違っています1つはそれ)。チェックされたものにはラベルが付いていますが、他のラベルにはラベルがありません。
私はここで間違って何をしているのですか?
'[checked] =" subscription.schedules.includes(schedule) "' 'subscription.schedules'は決して変更されないので、どのように動作しますか? – Kevin
私は正直なところ、他のすべてがそれを動作させるために配線されていたことを覚えていません。私はその後Angularから移った。申し訳ありません:/ – kshep92
偉大な答え!ありがとう。それは私が似たようなタスクのカスタムコンポーネントを作成することを避けることができます –