diff options
| author | Rafi Zadanly <zadanlyr@gmail.com> | 2023-05-16 15:35:24 +0700 |
|---|---|---|
| committer | Rafi Zadanly <zadanlyr@gmail.com> | 2023-05-16 15:35:24 +0700 |
| commit | db6350771d7668f27db026c42e3885a097989f1e (patch) | |
| tree | e1c370ec36a42df1d5affb5c667d99e34e2db8d0 /src/core/components/elements/DelayRender | |
| parent | 13ed5991179a497545cc5ed0ce98bb6a336c1b6a (diff) | |
optimize render
Diffstat (limited to 'src/core/components/elements/DelayRender')
| -rw-r--r-- | src/core/components/elements/DelayRender/DelayRender.js | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/core/components/elements/DelayRender/DelayRender.js b/src/core/components/elements/DelayRender/DelayRender.js index c0ff0fc0..2d412be7 100644 --- a/src/core/components/elements/DelayRender/DelayRender.js +++ b/src/core/components/elements/DelayRender/DelayRender.js @@ -1,17 +1,19 @@ const { useState, useEffect } = require('react') -const DelayRender = ({ delay, children }) => { - const [showComponent, setShowComponent] = useState(false) +const DelayRender = ({ renderAfter = 200, children }) => { + const [renderComponent, setRenderComponent] = useState(false) useEffect(() => { - const timeout = setTimeout(() => { - setShowComponent(true) - }, delay) + const renderTimeout = setTimeout(() => { + setRenderComponent(true) + }, renderAfter) - return () => clearTimeout(timeout) - }, [delay]) + return () => { + clearTimeout(renderTimeout) + } + }, [renderAfter]) - return showComponent && children + return renderComponent && children } export default DelayRender |
