diff options
| author | IT Fixcomart <it@fixcomart.co.id> | 2023-05-17 01:55:14 +0000 |
|---|---|---|
| committer | IT Fixcomart <it@fixcomart.co.id> | 2023-05-17 01:55:14 +0000 |
| commit | e16d278e6c63177d488bb8b5c62cedc898906c09 (patch) | |
| tree | 2b2a20ea2ac439ec2945f921f21f9160cd7b6c28 /src/core/components/elements/DelayRender | |
| parent | 6608d0e62fd232cbc19f42f58d1f56cfe2ef6842 (diff) | |
| parent | 0abaa462194715c25cee5fcede0da3085939b402 (diff) | |
Merged in master (pull request #8)
Master
Diffstat (limited to 'src/core/components/elements/DelayRender')
| -rw-r--r-- | src/core/components/elements/DelayRender/DelayRender.jsx | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/core/components/elements/DelayRender/DelayRender.jsx b/src/core/components/elements/DelayRender/DelayRender.jsx new file mode 100644 index 00000000..2d412be7 --- /dev/null +++ b/src/core/components/elements/DelayRender/DelayRender.jsx @@ -0,0 +1,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 |
