i defined multiple state for my app like this:
const
[state,setstate]=React.useState({headerpic:'',Headerfontfamily:'',Subheaderfontfamilty:''})
and i use a input as follows for getting an image from my device:
<Button variant='contained' color='primary' className={styler.buttons} name='headerpic'
>Header Pic
<input type='file' value={state.headerpic } style=
{{width:'100%',height:'auto',opacity:'0',position:'absolute',top:'0px'}} onChange=
{(e)=>fileuploader(e)}></input>
</Button>
i defined fileuploader like below:
const fileuploader=()=>{
if (e.target.files && e.target.files[0]) {
let img = e.target.files[0];
console.log(URL.createObjectURL(img))
setstate({
headerpic: URL.createObjectURL(img)
});
} }
when i click on button and choose the desired pic i got below error:
A component is changing a controlled input of type text to be uncontrolled. Input elements should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled input element for the lifetime of the component. More info:
any idea for solving this problem?