UNPKG

@react-three/drei

Version:

useful add-ons for react-three-fiber

18 lines (15 loc) 426 B
import * as React from 'react'; function call(ref, value) { if (typeof ref === 'function') ref(value);else if (ref != null) ref.current = value; } function useEffectfulState(fn, deps = [], cb) { const [state, set] = React.useState(); React.useLayoutEffect(() => { const value = fn(); set(value); call(cb, value); return () => call(cb, null); }, deps); return state; } export { useEffectfulState };