I am trying to fetch Cameras from after a specific interval.
Once I fetch all cameras, I set camera in local state but if I try to console.log
it I get nothing
const [allCameras, setAllCameras] = useState()
const fetchAllCameras = useCallback(async () => {
try {
const res = await getAllCameras();
if(res.data.status_code === 0 && res.data.data){
setAllCameras(res.data.data)
}
} catch (err) {
console.error(err);
}
}, [])
const _fetchData = useCallback(async () => {
fetchAllCameras()
if(allCameras){
// Nothing gets logged
console.log("allCameras", allCameras)
}
// If I add allCameras as a dependency it triggers an infinite loop
}, [fetchAllCameras])
useEffect(() => {
_fetchData();
const intervalID = setInterval(() => {
_fetchData();
}, FETCH_INTERVAL * 1000);
return () => clearInterval(intervalID);
}, [_fetchData]);