Fully uncontrolled — in this case your custom would take defaultChecked as a prop, and pass it to DOM . The state would be inside the component itself. The prop value would only ever be used once, when the component is first rendered, and then ignored. The parent would have no way to "force" that state to become something else. If you ever need to reset the input, you'd have to mount it with a different key.
TL;DR : If you want a checkbox to change across components, change it's "key" value (eg: key="{the things id}+{checked or not}"
To test:
Create a form.
Add a Question
Edit the Title, and the Required checkbox.
Note the values, and then click the "More" modal. The values should be the same. Edit them in the Modal.
Click save in the Modal.
Note the values, they should match what you changed. Edit the values again. Open the Modal, they should match again.
Fixes #3867
Learning :
TL;DR : If you want a checkbox to change across components, change it's "key" value (eg: key="{the things id}+{checked or not}"
To test: