我有一些动态字段,可以根据一些钩子状态进行删除/添加。我有从列表中删除的字段,但它们的错误仍然可见。我已经尝试clearErrors, unregister来删除它,但没有任何工作。
这是可能的吗?reset确实可以工作,但它也会重置整个表单。
我正在使用react-hook-form的v6,我不能把它升级到7,这是不可能的。
yup验证器正与其一起用于验证。
发布于 2021-06-01 22:24:15
我陷入了同样的问题,似乎是bug,如果你尝试注销控件,它不会这样做。下面是我所做的。
当您删除控件时,请取消注册并重置特定控件。
const handleRemoveRow = (control) => {
//all code logic and stuff
//................
unregister(control);
reset({ [control]: undefined });
};之后,在useEffect钩子上,假设你有一个主要的表单状态,重新赋值回来。
useEffect(() => {
const keyValue = getValues();
keyValues.map(({controlName,Value}) => {
setValue(controlName, Value);
});
}, [getValues()]);这是一个更多的伪代码,但我希望你能理解其中的概念。
https://stackoverflow.com/questions/67762221
复制相似问题