如何使用来自不同组件的挂钩?

时间:2020-08-21 17:09:33

标签: javascript reactjs

我从组件“ 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`

2 个答案:

答案 0 :(得分:0)

那是因为您没有将任何参数传递给props.setHasChecked();

答案 1 :(得分:0)

我建议最好将回调函数从A传递到B。在A中的回调函数中,您可以调用setChecked函数。