summaryrefslogtreecommitdiff
path: root/src/core/components/elements/DelayRender/DelayRender.jsx
blob: 2d412be7a8f66463e9a1c41b9d19780efba171be (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
const { useState, useEffect } = require('react')

const DelayRender = ({ renderAfter = 200, children }) => {
  const [renderComponent, setRenderComponent] = useState(false)

  useEffect(() => {
    const renderTimeout = setTimeout(() => {
      setRenderComponent(true)
    }, renderAfter)

    return () => {
      clearTimeout(renderTimeout)
    }
  }, [renderAfter])

  return renderComponent && children
}

export default DelayRender