Guten Abend Entwickler, so habe ich dieses Problem beim Binden meiner Checkboxen generiert dynamisch auf Werte in einem Array. Im Prinzip habe ich folgendes in meiner users.template.html Datei:Binding Array von IDs zu dynamisch generierten Kontrollkästchen in Angular4
<div *ngFor="let r of roles" class="checkbox">
<label for="">
<input type="checkbox" id="{{ r.name }}" (change)="onRoleChange(r.name, $event)" [checked]="userRoles.includes(r.name)"> {{ r.name }}
</label>
</div>
Im Grunde, was es tut, ist aktualisiert die Rollen ein Benutzer auf dem gegebene Kontrollkästchen Basis hat, die dynamisch erzeugt werden. Nun ist die (ändern) funktioniert wunderbar, aber die [geprüft] einen Fehler wirft sagen folgendes:
Kann nicht lesen Eigenschaft ‚enthält‘ undefinierter
Ich habe keine Ahnung, warum denn überall sah ich es weist mich darauf hin, diese Art von Bindung für diese Art von dynamischem Inhalt zu verwenden. Also alle Hinweise wären toll, wenn Sie sie bitte haben. Vielen Dank im Voraus für jeden Rat.
scheint 'userRoles' ist nicht überall definiert? Woher kommt das? – amal
Ich habe es am Anfang als *** userRoles: any []; *** definiert und dann seine Daten auf ngOnInit() initialisiert, um es gefüllt zu bekommen. –
Können Sie eine Probe seines Inhalts zeigen? – amal