当我想使用value={tempLogin.login}
时,我无法输入我的输入. 我做错了什么?我没有看到事件,对象和状态:(的错误
var loginInfo = {
login: "",
password: ""
};
const [tempLogin, addTempLogin] = React.useState(loginInfo);
const [logged, setLogged] = React.useState(0);
const newLogin = event => {
loginInfo.login = event.target.value;
addTempLogin(loginInfo);
console.log(tempLogin.login);
};
return ....
<TextField
placeholder="Wpisz swoją nazwę użytkownika"
type="text"
id="name"
onChange={newLogin}
/>
.....
不要在 React 中使用var
。
tempLogin
每次重新渲染到
{
login: "",
password: ""
}
因此,tempLogin.login
总是""
.
相反,请将您的useState()
为:
React.useState({
login: "",
password: ""
});
或传递loginInfo
作为道具。