UNPKG

@zohodesk/hooks

Version:

Unified Component Library - Hooks

35 lines (31 loc) 685 B
import { useEffect } from 'react'; /** * useTimeout * @function useTimeout * * @example * // callback method calls once timeout * import useTimeout from '@zohodesk/hook/es/timeout/useTimeout'; * useTimeout(1000, ()=>{}) * @param {object} props - props * @param {string} props.timer * @param {function} props.callback */ export default function useTimeout(props) { let { timer = 1000, callback } = props; // if (__DEV__) { // if (true) { if (!callback) { console.error('Callback must be given'); } // } useEffect(() => { let cT = setTimeout(() => { callback(); }, timer); return () => { clearTimeout(cT); }; }, []); }