【发布时间】:2021-02-26 02:09:24
【问题描述】:
我试图创建一个具有 -
的功能2 个文本框 - 1 个用于键,1 个用于值
当按钮被点击时,该数组将保存带有文本框的值。
在列表中显示数组
为此,我在 React Js 中创建了组件 -
import React, { useState } from 'react';
function HookArray() {
const[lKey,setKey]=useState('');
const[lValue,setValue]=useState('');
const[lKeyValue,setArray]=useState({id:'',value:''});
const addItem=()=>{
setArray(...lKeyValue,{lKey,lValue})
}
return(
<div>
<div id="divArrayList">
<ul>
{
lKeyValue.map(x=>
(
<li key={x.id} value={x.value}></li>
))
}
</ul>
</div>
<input id="txtKey" type="text" onChange={setKey(x=>x.target.value)} ></input>
<br></br>
<input id="txtValue" type="text" onChange={setValue(x=>x.target.value)}></input>
<br></br>
<input type="button" onClick="addItem();">Add</input>
</div>
)
}
export default HookArray;
但这会在运行时抛出错误 -
Error: Too many re-renders. React limits the number of renders to prevent an infinite loop.
【问题讨论】:
标签: javascript reactjs use-state