【发布时间】:2021-03-16 18:16:16
【问题描述】:
我有一个接受数字的输入字段。(1 到 30 之间)我想根据该文本字段中放置的数字显示一个项目数组。如何使用 React hooks 做到这一点。对于这样的开始,我有一些基本的东西,但这甚至可能不是最好的开始方式。
export default function App() {
const [state, setState] = React.useState({ value: "" });
const [myArray, updateMyArray] = React.useState([]);
const onSubmit = () => {
updateMyArray((arr) => [...arr, `${state.value}`]);
};
const handleChange = (event) => {
let { value, min, max } = event.target;
value = Math.max(Number(min), Math.min(Number(max), Number(value)));
setState({ value });
};
return (
<>
<input
type="number"
onChange={handleChange}
value={state.value}
min={""}
max={100}
/>
<button onClick={onSubmit}>Confirm</button>
{state.value && (
<>
<div>
{myArray?.map((e) => (
<div>{e}</div>
))}
</div>
</>
)}
</>
);
}
【问题讨论】:
-
那么如果用户在输入字段中输入20,你希望它显示20项?
标签: javascript arrays reactjs react-hooks