Próbuję użyć składni Angular2, aby utworzyć przyciski radiowe z definicji wyliczeniowej i powiązać tę wartość z właściwością, która ma typ tego wyliczenia.Angular 2: jak utworzyć przyciski radiowe z enum i dodać wiązanie dwukierunkowe?
Moje html zawiera:
<div class="from_elem">
<label>Motif</label><br>
<div *ngFor="let choice of motifChoices">
<input type="radio" name="motif" [(ngModel)]="choice.value"/>{{choice.motif}}<br>
</div>
</div>
W moim @Component, oświadczyłem zbiór wyborów i wartości:
private motifChoices: any[] = [];
A w konstruktorze moim @Component, wpisałem te wybory w następujący sposób:
constructor(private interService: InterventionService)
{
this.motifChoices =
Object.keys(MotifIntervention).filter(key => isNaN(Number(key)))
.map(key => { return { motif: key, value: false } });
}
Przyciski radiowe są wyświetlane poprawnie, teraz chcę powiązać wartość wybrane do właściwości. Ale kiedy klikam jeden z przycisków, wartość value.value jest ustawiona na undefined.
To uratowało mi życie [wartość] = „Wybór” ... bardzo dziwne doc api nawet nie pokazać to: https: // kątowe .io/docs/ts/latest/api/forms/index/RadioControlValueAccessor-directive.html –
z Object.values, otrzymuję "Wartość właściwości" nie istnieje na typie "ObjectConstructor". " – BBaysinger
Też dostaję "Wartości" właściwości "nie istnieje na typ" ObjectConstructor " – Waslap