Приветствую, возник вопрос во время работы с таймером. Суть задачи состоит в том, что требуется подгружать данные с сервера и затем их отрисовать по таймеру. Пример как это должно работать, есть state pageLoad, который по умолчанию false. По запуску таймера, состояние меняется на true, useEffect считывает изменения и если значение true запускает функцию. Она в свою очередь, производит запросы и какие-то вычисления и меняет значение на false. Но после изменения useEffect видит все равно true и запускает еще раз это функцию
сonst [pageLoad, setPageLoad] = useState(false)
useEffect(() => {
if(pageLoad === true){
test()
}
}, [pageLoad]);
const timer = setInterval(() => {
setPageLoad(true)
console.log(`поставил значение TRUE`);
}, 10000)
function test(){
console.log(pageLoad);
setPageLoad(false)
}
Результат кода должен раз в 20 сек выводить значение true. Но вместо этого происходит первая отработка и выводится значение 1, а потом уже как раз срабатывает два раза функция и выводит сразу 2 значения