我从组件“ A”内调用组件<B setHasChecked={()=>{setCheckedClientId(true)}}/>
,在组件“ A”内声明钩子const [checkedClientId, setCheckedClientId] = useState(false);
,在组件“ B”内执行props.setHasChecked();
。
即使工作正常,控制台上仍然出现错误:
React已检测到由“ A”调用的Hook顺序的变化
Previous render Next render
------------------------------------------------------
1. useState useState
2. undefined useRef`
答案 0 :(得分:0)
那是因为您没有将任何参数传递给props.setHasChecked();
答案 1 :(得分:0)
我建议最好将回调函数从A
传递到B
。在A
中的回调函数中,您可以调用setChecked
函数。