【发布时间】:2021-11-16 14:33:22
【问题描述】:
我正在使用 Material UI 构建一个表单,并使用 react hook 表单进行验证。除了自动完成之外,它使用反应钩子表单的控制器组件可以完美地工作。虽然它捕获自动完成数据,但错误处理不起作用。我假设这是因为虽然错误对象是从 Controller => Autocomplete 传递下来的,但它没有传递给嵌套的 TextField 组件。如果我对自动完成组件进行错误验证,它也不起作用。有人解决了这个问题吗?我的组件代码如下
<Controller
name="categories"
control={control}
defaultValue=''
render={(props) =>
<Autocomplete
className='formInputs'
options={categories}
renderInput={params =>
<TextField
name='autoCompleteTextField'
{...params}
// value={props.field.value}
label="What do you do?"
variant="outlined"
rules={{
required: {
value: true,
message: "Please tell us what you're an expert on. It helps us prioritize your referrals"
}
}}
error={Boolean(props.fieldState.error)}
onChange={(e, data) => props.field.onChange(data)}
{...props}
/>
}
/>
}
/>
【问题讨论】:
-
您使用的是哪个 react-hook-form 和 MUI 版本?
标签: reactjs material-ui react-hook-form