gpt4 book ai didi

reactjs - Material UI 的 React 评级组件如何用于表单?

转载 作者:行者123 更新时间:2023-12-05 03:51:04 25 4
gpt4 key购买 nike

我正在尝试在 react-hook-form 中使用 Material UI 的 React 评级组件。

  ... 
<form onSubmit={handleSubmit(onSubmit)}>
<FormControlLabel
control={
<Checkbox
inputRef={register}
name="remember"
defaultValue={false}
/>
}
label="remember"
/>
<br />
<FormControlLabel
control={
<Rating
inputRef={register}
name="rating"
defaultValue={2}
precision={1}
icon={<RadioButtonUncheckedIcon fontSize="inherit" />}
/>
}
label="select rating"
/>
<Button type="submit">
Submit
</Button>
</form>
...

我不明白为什么评级组件的值没有被注册,但复选框的值被注册了。请在 https://codesandbox.io/s/suspicious-drake-1d0kx?file=/src/form.js 找到代码(在提交时,评分的值不会打印到控制台,而复选框的值是)。

最佳答案

根据doc , Rating 没有 input 元素可以将 ref 传递给 TextFieldCheckbox,因此一个解决方案是创建一个替换中的隐藏输入以存储评级值

<FormControlLabel
control={
<>
<input
name="rating"
type="number"
value={rating}
ref={register}
hidden
readOnly
/>
<Rating
name="rating"
value={rating}
precision={1}
onChange={(_, value) => {
setRating(value);
}}
icon={<RadioButtonUncheckedIcon fontSize="inherit" />}
/>
</>
}
label="select rating"
/>

下面是修改的forked codesandbox链接

Edit cool-cache-o4o7c

关于reactjs - Material UI 的 React 评级组件如何用于表单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63205951/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com