/
githubmirror
/
Open-Assistant
Обзор
Документация
Войти
/
githubmirror
/
Open-Assistant
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
website/src/hooks/ui/useScrollToElementOnMount.ts
25 строк
615 B
notmd
Chat vote UI (#1913)
04 мар 2023, 17:22
Не верифицирован
04 мар 2023, 17:22
200e8fa
Код
Авторство
О чём код?
import { RefObject, useEffect, useState } from "react"; /** * This is a custom hook that returns a ref that can be used to focus an element. * * Use like: * * ``` * const ref = useRef(); * useScrollToElementOnMount(ref); * return <div ref={ref} /> * ``` */ export const useScrollToElementOnMount = (ref: RefObject<HTMLElement>) => { const [scrolled, setScrolled] = useState(false); useEffect(() => { if (!ref.current || scrolled) { return; } ref.current.style.scrollMarginTop = "2em"; ref.current.scrollIntoView(); setScrolled(true); }, [ref, scrolled]); };