我想在页面上获取用户信息。
这是codesandbox.io页面。
https://codesandbox.io/s/material-demo-z1x3q?fontsize=14
当我在성별*文本字段中连续输入“ d”时。
但是我只能输入“ d”一次。 如果我想输入更多内容,我必须单击성별*文本字段,然后输入“ d”
你能帮我吗?
没有错误消息。只是不要连续写。
答案 0 :(得分:1)
在function Certify()
的正文中移动以下内容
const gender = useinput("");
const birthday = useinput("");
const phone = useinput("");
const certifys = [
{ key: "성별", state: gender },
{ key: "생일", state: birthday },
{ key: "번호", state: phone }
];
答案 1 :(得分:0)
您错误地实现了表单,实现方式如下:
const [values, setValues] = React.useState({
gender: "",
birthday: "",
phone: ""
});
const handleChange = name => event => {
setValues({ ...values, [name]: event.target.value });
};
const classes = useStyles();
function Certify() {
return (
<React.Fragment>
<Grid container spacing={3}>
{Object.keys(values).map((certify, index) => (
<Grid item xs={12} sm={6} key={index}>
<TextField
required
label={certify.key}
onChange={handleChange}
value={certify.value}
fullWidth
/>
</Grid>
))}
</Grid>
</React.Fragment>
);
}