Next.js Discord

Discord Forum

Why is my state of "hasPages" being ignored?

Answered
noli posted this in #help-forum
Open in Discord
useEffect(() => {const intersectionObserver = new IntersectionObserver(entries => {
        console.log(hasPages)
        if (entries[0].isIntersecting && loading == false && hasPages == true) {
            loading =true;
        
       debounce(fetchNextObjekts, 1000);
        
        
      }loading=false;});

    intersectionObserver.observe(document.querySelector(".more")); })


by default
    const [hasPages, setHasPages] = useState(true)

fetchNextObjekts
(fetchobjects is a function that selects data)
     const fetchNextObjekts = async () => {const pageNumber = pagesLoaded+1;
            
            fetchobjekts(pageNumber, userid, batchSize).then(res => {
                console.log(res.length)
                if (res.length == 0) {
                    setHasPages(false)
                }
                setObjekts([...objekts, ...res]);
                
                setPagesLoaded(pageNumber);
                loading = false;
                
            });}
Answered by Ray
I think you missed hasPages in the dependency array
useEffect(() => {}, [hasPages])
View full answer

1 Reply