我有onClick事件,它是几个函数的触发器。函数setRcomForApi(rcom)
为函数ip1, port1
设置值getApiVersion(ip1, port1)
。问题是-第一次单击ip1, port1
是undefined
。我尝试使用回调-但这没用...
const onClick = () => {
setIndexPpk(index);
setRcomForApi(rcom); //sets ip1 and port1 in Context State.
getApiVersion(ip1, port1); // on first click both undefined
};
最佳答案
这是因为setRcomForApi(rcom)是异步的。因此,您需要使用useEffect来检查ip1和port1值的变化
useEffect(() => {
if(ip1 && port1) {
getApiVersion(ip1, port1);
}
}, [ip1, port1]);