-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: 로그아웃 타이머 및 로그아웃 관련 버그 수정 #223
Conversation
const expirationTime = getTokenExpirationTime(token); // 만료 시간 | ||
const updateRemainingTime = () => { | ||
const currentTime = Date.now(); // 현재 시간 | ||
const remainingTime = Math.max(0, expirationTime - currentTime); // 남은 시간 계산 | ||
setTimeLeft(Math.floor(remainingTime / 1000)); // 초 단위로 상태 업데이트 | ||
|
||
if (remainingTime <= 0) { | ||
logout(); // 시간이 다되면 로그아웃 | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
setInterval을 통해서 만료시간에서 1초씩 빼는 로직에서 만료시간에서 현재시간을 빼는 로직으로 바꿨습니다.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
고생하셨습니다 👍
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
빠른 조치 감사합니다!
@@ -43,7 +41,6 @@ const UserStatus = ({ user, token }: UserStatusProps) => { | |||
if (result) { | |||
toast.success('로그아웃이 완료되었습니다.'); | |||
deleteCookie('token'); | |||
router.push('/gatherings'); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
P3) 이게 어떤 면에서 문제가 되었을까요?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
deleteCookie('token');가 실행되기 전에 종종 router.push('/gatherings');가 먼저 실행되어서 쿠키가 삭제되지 않았던 문제로 생각합니다.
then 체이닝으로 묶기엔 마이페이지의 토큰검사 로직도 있고 다른 버그를 일으킬 것 같아서 뺐습니다.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
로그아웃이 될 때도 있고 안 될 때도 있었는데
잘 해결된 것 같아서 다행이네요! 👍
고생 많으셨습니다...!
질문 하나만 답변 부탁드릴게요!
const dropDownRef = useRef<HTMLDivElement>(null); | ||
const router = useRouter(); | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
P4) 혹시 그럼 router 를 빼면 이동은 어떤 식으로 하게 되는지 궁금합니다!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
마이페이지에서는 레이아웃의 토큰검사로직에 걸려서 gatherings 페이지로 이동되고
이외의 사이트에서는 페이지 이동없이 gnb바만 바뀝니다!
✏️ 작업 내용
📷 스크린샷
마이페이지에서 로그아웃
Oct-18-2024.14-44-15.mov
마이페이지 이외의 페이지에서 로그아웃
Oct-18-2024.14-45-04.mov
🎸 기타
route 함수때문에 로그아웃함수에서 버그를 일으켜서 없애버렸습니다.
close #203