Состояние формы логина контролируется при помощи хука useState. На каждое поле формы повешен обработчик onChange. После ввода пользователя соответствующие значения записываются в объект состояния:
import React, { useState } from 'react';
function Auth(props) {
const [form, setForm] = useState([{
login: '',
password: '',
}]);
return (
<>
<div className="login-form">
<input type="text" onChange={ e => { setForm({ login: e.currentTarget.value }) } }/>
<br/>
<input type="text" onChange={ e => { setForm({ password: e.currentTarget.value }) } }/>
<br/>
<button>auth</button>
{ form.login }--
{ form.password }
</div>
</>
);
}
export default Auth;
Проблема в том, что после заполнения поля login в стейте пропадают значения password. И при заполнеии поля password в стейте пропадают значения login. Это видно на экране:
{ form.login }--
{ form.password }
Помогите пожалуйста сделать так чтобы в стейте независимо сохранялись значения обоих полей.
Есть вариант использовать два хука useState, но мне нужен именно один