javascript - 使用 react-hook-form 重置功能时,Material-UI

我正在使用

"react-hook-form": "7.9.0",

"@material-ui/core": "4.11.4",.

我正在尝试通过单击常规按钮并使用 react-hook-formreset ( react-hook-form reset ) 方法手动重置一些复选框。

出于某种原因,我可以在 React 开发工具中看到“checked”属性变为 false,但 SwitchBase(v 图标)仍然打开。

你可以看到例子:Over here

感谢您的宝贵时间。

最佳答案

MUI <Checkbox />组件有一个稍微不同的界面来设置 value . RHF 值必须设置为 checked Prop 。

重要提示:您必须使用 checked={!!value} 设置值避免在您的 defaultValue 将组件从不受控更改为受控时发出警告对于 someCheckbox最初是 undefined .

export const Checkbox = ({
  name,
  label,
  control,
  labelPlacement,
  disabled,
  className
}) => {
  return (
    <FormControlLabel
      label={label}
      disabled={disabled}
      labelPlacement={labelPlacement}
      className={className}
      control={
        <Controller
          name={name}
          control={control}
          rules={{ required: true }}
          render={({ field: { value, ...field } }) => (
            <MuiCheckbox
              {...field}
              checked={!!value}
            />
          )}
        />
      }
    />
  );
};

关于javascript - 使用 react-hook-form 重置功能时,Material-UI 复选框不会重置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68228030/

相关文章:

c++ - 如何在 C++ 中分解指向成员的指针(获取类和成员类型)?

postgresql - 为什么我的 PostgreSQL 在 CURRENT_TIMESTAMP

r - 从向量中提取重复 n 次的元素 (R)

common-lisp - 为什么在这种情况下 find 函数返回 NIL?

arrays - 通过在 c 中迭代打印字符

php - Laravel Sail 部署就绪了吗

r - 根据列中的值创建新行?

rust - Crate 和 Package 之间的确切区别是什么?

javascript - 一个数组中的字符串在另一个数组中存在多少次?

python - 如何在 python 中循环函数 def,直到我写下数字 0