function App () { const [data, setData] = React.useState({ username: '', email: '', password: '' }) const handleChange = paramName => event => { setData(prevData => ({ username: prevData.username, email: prevData.email, password: prevData.password, [paramName]: event.target.value })) } const handleSubmit = (event) => { event.preventDefault() console.log('Submit', data) } return ( <form onSubmit={handleSubmit}> <input type="text" placeholder="Username" value={data.username} onChange={handleChange('username')} /> <input type="text" placeholder="E-mail" value={data.email} onChange={handleChange('email')} /> <input type="password" placeholder="Password" value={data.password} onChange={handleChange('password')} /> <button type="submit">Submit</button> </form> )}