diff --git a/web/app/components/header/account-setting/members-page/transfer-ownership-modal/index.tsx b/web/app/components/header/account-setting/members-page/transfer-ownership-modal/index.tsx index 21ea8aa1e9..27077c170f 100644 --- a/web/app/components/header/account-setting/members-page/transfer-ownership-modal/index.tsx +++ b/web/app/components/header/account-setting/members-page/transfer-ownership-modal/index.tsx @@ -36,13 +36,30 @@ const TransferOwnershipModal = ({ onClose, show }: Props) => { const [stepToken, setStepToken] = useState('') const [newOwner, setNewOwner] = useState('') const [isTransfer, setIsTransfer] = useState(false) + const timerRef = React.useRef | null>(null) + + React.useEffect(() => { + return () => { + if (timerRef.current) { + clearInterval(timerRef.current) + timerRef.current = null + } + } + }, []) const startCount = () => { + if (timerRef.current) { + clearInterval(timerRef.current) + timerRef.current = null + } setTime(60) - const timer = setInterval(() => { + timerRef.current = setInterval(() => { setTime((prev) => { if (prev <= 0) { - clearInterval(timer) + if (timerRef.current) { + clearInterval(timerRef.current) + timerRef.current = null + } return 0 } return prev - 1