Proyectos de Subversion LeadersLinked - SPA

Rev

Ir a la última revisión | | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
3658 stevensc 1
import { useCallback, useRef } from 'react';
2
 
3
export const useInterceptionObserver = ({ onIntersect }) => {
4
  const observer = useRef(null);
5
 
6
  const lastElementRef = useCallback(
7
    (node) => {
8
      if (observer.current) observer.current.disconnect();
9
 
10
      observer.current = new IntersectionObserver((entries) => {
11
        if (entries[0].isIntersecting) {
12
          onIntersect();
13
        }
14
      });
15
 
16
      if (node) observer.current.observe(node);
17
    },
18
    [onIntersect]
19
  );
20
 
21
  return { elementRef: lastElementRef };
22
};