Javascript 在单击“从表单对象反应js”时添加输入字段
我使用react应用程序中的以下代码片段为表单生成输入字段:Javascript 在单击“从表单对象反应js”时添加输入字段,javascript,reactjs,Javascript,Reactjs,我使用react应用程序中的以下代码片段为表单生成输入字段: const[profiles,setProfiles]=useState({ 控制:[ { 网络:{ elementType:“输入”, 元素配置:{ 键入:“文本”, 标签:“网络”, }, 价值:“推特”, }, }, { 用户名:{ elementType:“输入”, 元素配置:{ 键入:“文本”, 标签:“用户名”, }, 值:“@john”, }, }, { 网址:{ elementType:“输入”, 元素配置:{ 键入
const[profiles,setProfiles]=useState({
控制:[
{
网络:{
elementType:“输入”,
元素配置:{
键入:“文本”,
标签:“网络”,
},
价值:“推特”,
},
},
{
用户名:{
elementType:“输入”,
元素配置:{
键入:“文本”,
标签:“用户名”,
},
值:“@john”,
},
},
{
网址:{
elementType:“输入”,
元素配置:{
键入:“url”,
标签:“URL”,
},
值:“https://example.co",
},
},
],
});代码>您应该全部设置配置文件
以更新状态
不要使用profiles.controls.push(项目)
setProfiles({…profiles,controls:[…profiles.controls,item]})
您应该设置所有更新状态的配置文件
不要使用profiles.controls.push(项目)
setProfiles({…profiles,controls:[…profiles.controls,item]})
找到了我自己的解决方案:
const handleadfield=()=>{
常量字段=[…profiles.controls];
fields.map((项目,i)=>{
字段。推送(项目);
});
设置配置文件((上一个)=>({
…上一页,
控件:字段
}));
};代码>找到了我自己的解决方案:
const handleadfield=()=>{
常量字段=[…profiles.controls];
fields.map((项目,i)=>{
字段。推送(项目);
});
设置配置文件((上一个)=>({
…上一页,
控件:字段
}));
};哦,谢谢,我完全错过了。但是把它放在map函数中就是添加最后一个输入字段url
onlyOh谢谢我完全错过了它。但将其放在map函数中只会添加最后一个输入字段url