#javascript #html #angular #typescript
#javascript #HTML #угловой #typescript
Вопрос:
Я пытаюсь реализовать радиогруппу в списке элементов. Я не могу установить флажок для кнопки radion на основе значения. Пожалуйста, направьте меня.
HTML
<div *ngFor="let item of data; let i = index">
<nb-radio-group class="p-3 d-inline-flex">
<nb-radio [checked]="item.data.v === true">open</nb-radio>
<nb-radio [checked]="item.data.v === false">close</nb-radio>
</nb-radio-group>
</div>
только переключатель в последнем элементе массива показывает, установлен переключатель или нет. другие не связывают данные должным образом.
Ответ №1:
Пожалуйста, рассмотрите возможность использования свойства value
<nb-radio-group class="p-3 d-inline-flex" [(value)]="item.data.v">
<nb-radio [value]="true">open</nb-radio>
<nb-radio [value]="false">close</nb-radio>
</nb-radio-group>
Ответ №2:
вы должны использовать * ngswitch для отображения вашего варианта, затем в зависимости от того, нажмет пользователь или нет, вы будете привязывать данные, см. Этот пример, используя флажок, а также item.data, v должно быть логическим
enter code here
<td><input type="checkbox" [(ngModel)]="item.done" /></td>
<td [ngSwitch]="item.done">
<span *ngSwitchCase="true">
Yes
</span>
<span *ngSwitchDefault>
No
</span>
</td>
а также вы должны использовать фильтр для возврата данных на основе true или false