Reactjs 警告:组件正在更改文件类型的受控输入

Reactjs 警告:组件正在更改文件类型的受控输入,reactjs,react-component,Reactjs,React Component,在使用react的应用程序中,我有一个带有radio输入的表单,它选择要渲染的组件,但是当我更改radio选项时,会显示此警告- “组件正在更改要控制的文件类型的非受控输入。输入元素不应从非受控切换到受控(反之亦然)。在组件的生命周期内决定使用受控或非受控输入元素” 表格 import React,{useState}来自“React”; 导出默认值()=>{ const[link,setLink]=useState(“”); const[arquivo,setArquivo]=useState

在使用react的应用程序中,我有一个带有
radio
输入的
表单
,它选择要渲染的组件,但是当我更改radio选项时,会显示此警告-

“组件正在更改要控制的文件类型的非受控输入。输入元素不应从非受控切换到受控(反之亦然)。在组件的生命周期内决定使用受控或非受控输入元素” 表格

import React,{useState}来自“React”;
导出默认值()=>{
const[link,setLink]=useState(“”);
const[arquivo,setArquivo]=useState(“”);
const[forma_envio,setformanvio]=使用状态(“”);
返回(
{
SetFormEnvio(即目标值);
}}
/>
{
SetFormEnvio(即目标值);
}}
/>
{forma_envio==“文件”(
{
e、 预防默认值();
handleUpload(e.target.files[0]);
}}
/>
):forma_envio==“链接”(
{
e、 预防默认值();
setLink(即目标值);
}}
/>
):
("")}
);
}
所有状态都以“
开头


一切正常,但我仍然不知道如何修复此警告。

请确保
链接的初始值不是
null
未定义的
,而是空字符串,如:


//const[link,setLink]=React.useState()//您能用完整的组件代码编辑这个问题吗?已编辑,只是没有将发出请求的函数放入数据库,因为它相当大。但该函数只需检查请求状态是否为201,并重定向到另一个路由。问题是type=“file”的输入没有值。我将根据您的示例编辑答案。这花了一些时间,但我编辑了。文件输入必须不受控制。