MatRadioButton: Error: No value accessor for form control with path...
- Dominant language
- TypeScript
- Stars
- 25k
- Forks
- 6.8k
- Avg merge
- 1d 8h
- Merged PRs (30d)
- 91
Description
#### What is the expected behavior?
I'm trying to use the `mat-radio-button` inside an HTML table (agreed, the form is a bit stange). It's an array of data, for each row I need 2 radio buttons. I'm constructing the `FormArray` dynamically and then bind it into the HTML.
Note: Being in a table, where each of the grouped radio buttons is inside it's own ``, I cannot use `` but that shouldn't be an issue as I'm using the `name` attribute as you would with native controls.
#### What is the current behavior?
Right now the behavior is that I'm getting an error saying `No value accessor for form control with path: 'phoneNumbers -> 0 -> phone1'` etc...and hence the databinding doesn't work.
On the other side, if I change nothing else, but the `mat-radio-button` with native HTML radio buttons, everything works as expected (see repro stackblitz below).
#### What are the steps to reproduce?
Providing a StackBlitz reproduction is the *best* way to share your issue.
StackBlitz starter: https://goo.gl/wwnhMV
Example using HTML native radio buttons: https://stackblitz.com/edit/angular-reactiveforms-dynamic-formarray-binding?file=app/person-edit.component.ts
(Failing) example using `mat-radio-button`: https://stackblitz.com/edit/angular-4k8hf4-3egfsd?file=app%2Fradio-overview-example.html
#### Which versions of Angular, Material, OS, TypeScript, browsers are affected?
latest from the current docs (i.e. `v7.2`)
Contributor guide
Research direction
Start by running the failing StackBlitz example in app/radio-overview-example.html and compare it with the native-radio example in app/person-edit.component.ts. Reproduce the reported error for the dynamic FormArray and trace the form-control path. Done means the mat-radio-button controls bind correctly in the table without the value-accessor error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- angular, typescript
- Domain
- frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100