UNPKG

zent

Version:

一套前端设计语言和基于React的实现

17 lines (16 loc) 525 B
import { useRef, useCallback, useEffect } from 'react'; export function useAnimationFramed(callback) { var callbackRef = useRef(callback); var handleRef = useRef(null); useEffect(function () { callbackRef.current = callback; }, [callback]); return useCallback(function () { if (!handleRef.current) { handleRef.current = requestAnimationFrame(function () { handleRef.current = null; callbackRef.current(); }); } }, []); }