When Inputs have prop disabled={false}, SaveButton is disabled and dirtyFields is not working as expected.
When Input have prop as disabled={false} , it renders component again , reset defaultValues . It is causing a bug , dirtyFields are not working as expected.
What you were expecting: SaveButton should work as expected.When form input is touched , savebutton should be enabled.
What happened instead: SaveButton is disabled when there is touched input.
Steps to reproduce: Add disabled={false} to Inputs in Create page .Then write to this input , you will see that SaveButton is disabled in Create page. You can see it in image that i added. It is also causing a bug in Edit page too.
- Preferably, a sandbox forked from https://stackblitz.com/github/marmelab/react-admin/tree/master/examples/simple v5
Other information:
Environment
- React-admin version:5.6.4
- Last version that did not exhibit the issue (if applicable):
- React version:18
- Browser:Chrome
- Stack trace (in case of a JS error):
Did you try using readOnly instead of disabled, as explained in the documentation?
Thank you for quick response . I already find a way to fix this issue in my code , i just want to inform you that it is causing a bug.
How can you "write to a disabled input"? I don't understand the reproduction scenario.
I do not write to disabled input . It is happenning if you set disabled={false} to input
i can't reproduce the error you describe on master. Please attach a sandbox showing the bug, together with a detailed reproduction scenario.
https://stackblitz.com/github/marmelab/react-admin/tree/master/examples/simple You can reproduce here , it was also added to post too . Also in the picture i added you can see .You just set disabled={false} to TextInput then try to write to this exactly the same input , you will see that savebutton is not enabled.
OK, it fails on Stackblitz but works on master... Maybe due to a particular version of react-hook-form. Marking it as a bug for further enquiry.
It's a known issue with react-hook-form. There are several issues no this in their repository: https://github.com/react-hook-form/react-hook-form/issues?q=is%3Aissue%20disabled%20.
Some are fixed but the fixes have not been released yet. If you can, downgrade to 7.53.2.