我需要您的帮助,我正在尝试使用react-strap中的表单,由于某种原因,我收到此错误消息:
警告:组件正在将密码类型的受控输入更改为不受控制。输入元素不应从受控状态切换到非受控状态(反之亦然)。在组件的使用寿命中决定使用受控还是不受控制的输入元素
这是我的代码。 一切都得到控制,但我仍然会收到错误,有人可以发现我的错误吗?
const LoginForm = () => {
const [formData, setFormData] = useState({
email: " ",
password: " "
});
const onChange = e => {
setFormData({
[e.target.name]: e.target.value
});
};
const onSubmit = e => {
e.preventDefault();
console.log("email password are", formData.email, formData.password);
loginUser(formData.email, formData.password);
};
return (
<Form onSubmit={onSubmit}>
<FormGroup>
<h1>Login</h1>
</FormGroup>
<FormGroup>
<Label for="Email">Email</Label>
<Input
type="email"
name="email"
id="Email"
placeholder="example@mail.com"
onChange={onChange}
value={formData.email}
/>
</FormGroup>
<FormGroup>
<Label for="Password">Password</Label>
<Input
type="password"
name="password"
id="Password"
placeholder="password"
onChange={onChange}
value={formData.password}
/>
</FormGroup>
<Button>Submit</Button>
</Form>
);
};
答案 0 :(得分:0)
好吧,我发现了错误,我没有传播最后一个答案,所以通过输入密码我覆盖了我的电子邮件,更改时应该是这样:
counts