/
Nonashi
/
dragonauto
Обзор
Документация
Войти
/
Nonashi
/
dragonauto
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
client/src/hooks/useInView.js
24 строки
547 B
N0nashi
Новая версия сайта
25 май 2026, 06:48
25 май 2026, 06:48
bc30296
Код
Авторство
О чём код?
import { useEffect, useRef, useState } from "react"; export function useInView(threshold = 0.12) { const ref = useRef(null); const [inView, setInView] = useState(false); useEffect(() => { const el = ref.current; if (!el) return; const obs = new IntersectionObserver( ([entry]) => { if (entry.isIntersecting) { setInView(true); obs.disconnect(); } }, { threshold } ); obs.observe(el); return () => obs.disconnect(); }, [threshold]); return [ref, inView]; }