After adding [(ngModel)] to a radio button group, the default [checked] no longer works
I think, you don't need this [checked]="choice === defaultChoice"
. Try this :
<input type="radio"
id="{{ groupName + choice }}"
name="{{groupName}}"
[value]="choice"
[(ngModel)]="defaultChoice"
(ngModelChange)="choose($event)" />
When [value] = [(ngModel)]
the radio is selected.
I was able to emit the value and retain the default styling with minimal changes by altering the input's template to:
<input type="radio"
id="{{ groupName + choice }}"
name="{{groupName}}"
value="{{ choice }}"
[checked]="choice === defaultChoice"
(click)="choose($event['target']['value'])" />
...which I find kind of hacky. It also doesn't explain why adding data/property binding broke it, so I'm open to more suggestions.