* ngForループの配列の値に基づいていくつかのチェックボックスを作成しています。 これらのチェックボックスの1つをクリックすると、選択されたものとしてマークされますが、別のものが選択されて表示されますが、モデルでは最初のチェックボックスの値だけが変更されています。角度コンポーネントのループで作成されたチェックボックスが不正確な選択状態を示します
に私のコンポーネントは次のとおりです。
import { Component } from '@angular/core';
@Component({
selector: 'my-app',
template: `
<div>
<div *ngFor="let item of schedule; let i = index">
<input type="checkbox" [(ngModel)]="schedule[i]">
</div>
<span>{{schedule | json}}</span>
</div>
`
})
export class AppComponent {
schedule: boolean[] = [];
constructor() {
for (let i = 0; i < 7; i++) {
this.schedule.push(false);
}
}
}
それを引き起こすコードに正しくないことができますか?
これはあなたが使用している角度バージョンのバグのようです。 – Thiagz
さて、 '[(ngModel)]の値をバインドするための配列を分離して作成するだけで、うまくいくようです(ここでは** http://plnkr.co/edit/0siQCuvSDOJDwfEZsk0D?p = info)。 – developer033
@ developer033うわー、本当にありがとう。なぜあなたは別の配列を使用するのが助けになるのですか? –