要解决这个问题,你可以按照以下步骤进行操作:
以下是一个示例代码:
import React, { useState } from 'react';
const MyComponent = () => {
const [userInputs, setUserInputs] = useState([]);
const handleInputChange = (event, index) => {
const { name, value } = event.target;
const updatedInputs = [...userInputs];
updatedInputs[index] = { ...updatedInputs[index], [name]: value };
setUserInputs(updatedInputs);
};
const handleSubmit = () => {
// 在这里发送用户输入的对象
console.log(userInputs);
};
const addUserInput = () => {
setUserInputs([...userInputs, {}]);
};
return (
<div>
{userInputs.map((input, index) => (
<div key={index}>
<input
type="text"
name="name"
value={input.name || ''}
onChange={(event) => handleInputChange(event, index)}
/>
<input
type="text"
name="email"
value={input.email || ''}
onChange={(event) => handleInputChange(event, index)}
/>
</div>
))}
<button onClick={addUserInput}>添加用户输入</button>
<button onClick={handleSubmit}>发送</button>
</div>
);
};
export default MyComponent;
在这个示例中,我们使用了useState钩子函数来创建userInputs状态变量,用于存储用户输入的对象数组。handleInputChange函数用于更新用户输入的对象,而handleSubmit函数用于在发送请求时访问用户输入的对象。addUserInput函数用于添加新的用户输入对象。
这样,当你点击"添加用户输入"按钮时,会添加一个新的输入框,你可以在输入框中输入用户的姓名和电子邮件。当你点击"发送"按钮时,会将用户输入的对象打印到控制台。
请注意,这只是一个简单的示例,你可以根据自己的需求进行修改和扩展。
领取专属 10元无门槛券
手把手带您无忧上云