У меня есть специальный хук для вызова API каждые 5 секунд. Следующий код работает, но res
console.log каждый раз имеет одно и то же значение. Я ожидаю, что он покажет обратный отсчет времени. Я проверил, что API работает - если я нажму на него каким-либо другим способом, я каждый раз вижу другое значение.
Я использую библиотеку use-http
для моего вызова useFetch
.
const useSession = () => {
const request = useFetch('', { headers: getHeaders() })
const checkTime = () => {
console.log('calling')
request.get('/api/users/session/status/')
.then(res => {
console.log('res: ', res)
// update state here
})
.catch(err => console.log(err))
}
useEffect(() => {
const timeout = setTimeout(() => checkTime(), 5000)
return () => clearTimeout(timeout)
}, [request, checkTime])
}