有人可以用外行的术语向我解释 FormControl 提供什么功能,以及为什么/如何使用它?
我在 React 中使用 Material-UI,我看到的许多表单示例都使用 FormControl,但我很难理解它的作用,以及我的项目是否有必要。
现在我只有一个名为 Form.js 的组件,我将所有表单元素包含在一个 div 中,如下所示:
return (
<div>
<FormControl className={classes.formControl}>
<InputLabel htmlFor="select-multiple-accounts">Account</InputLabel>
<Select
multiple
value={accountName}
onChange={handleAccountChange}
input={<Input id="select-multiple-accounts" />}
renderValue={
selected => (
<div className={classes.chips}>
{
selected.map(value => (
<Chip key={value} label={value} className={classes.chip} />
))}
</div>
)}
MenuProps={MenuProps}
>
{accountNames.map(name => (
<MenuItem key={name.label} value={name.label} style={getStyles(name.label, accountName, theme)}>
{name.label}
</MenuItem>
))}
</Select>
</FormControl>
<br /><br />
<TextField
id="job-number"
label="Job #"
className={classes.textField}
value={props.jobNumber}
onChange={handleJobNumberChange}
fullWidth
/>
<br /><br /><br />
<TextField
id="project-description"
label="Project Description"
placeholder="Provide a detailed description of the project:"
className={classes.textField}
multiline
variant="outlined"
value={props.projectDescription}
onChange={handleProjectDescriptionChange}
fullWidth
/>
</div>
);
}
这个可以吗?还是我应该将所有内容都包装在 FormControl 中?如果是这样......你能解释一下为什么吗?我不确定将表单编码到 React Web 应用程序时的最佳实践是什么。我是 React Forms 的新手。
谢谢。