From db6350771d7668f27db026c42e3885a097989f1e Mon Sep 17 00:00:00 2001 From: Rafi Zadanly Date: Tue, 16 May 2023 15:35:24 +0700 Subject: optimize render --- .../components/elements/DelayRender/DelayRender.js | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) (limited to 'src/core/components/elements/DelayRender/DelayRender.js') 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 -- cgit v1.2.3