vision-agent / lib /hooks /useAtBottom.tsx
MingruiZhang's picture
clean up code
052672d
raw
history blame
511 Bytes
import * as React from 'react';
export function useAtBottom(offset = 0) {
const [isAtBottom, setIsAtBottom] = React.useState(false);
React.useEffect(() => {
const handleScroll = () => {
setIsAtBottom(
window.innerHeight + window.scrollY >=
document.body.offsetHeight - offset,
);
};
window.addEventListener('scroll', handleScroll, { passive: true });
handleScroll();
return () => {
window.removeEventListener('scroll', handleScroll);
};
}, [offset]);
return isAtBottom;
}