我有一个React组件,它在操作成功后触发模态(5秒超时消失),但是我遇到了问题,因为模态不会触发更改状态并关闭状态的函数。我认为问题在于,我每2秒钟使用setTimeout()
从API中获取数据,而我的模态函数永远不会离开堆栈(我测试过并且永远不会调用函数),有没有一种好的方法解决此问题而没有将我的模式的setTimeout
的时间设置为小于获取数据的时间?
这是该函数的示例:
const fetchFunction = id => {
fetchFile(id, response => {
// If the current state is pending, we call this function in 2 seconds.
if (condition) {
setTimeout(() => {
fetchFunction(id);
}, 2000);
} else if (response) {
doSomething()
}
});
};