File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -6,6 +6,7 @@ import { OAUTH } from '@/constants/oauth';
66import { sendLetterState } from '@/recoil/letterStore' ;
77import { theme } from '@/styles/theme' ;
88import { OAuthType } from '@/types/login' ;
9+ import { clearAnonymousSendLetterCode } from '@/utils/storage' ;
910import { useRouter } from 'next/navigation' ;
1011import { Suspense , useEffect } from 'react' ;
1112import { useRecoilState } from 'recoil' ;
@@ -17,6 +18,7 @@ export default function Login() {
1718
1819 /* 로그인 페이지에서 편지 쓰기 store 초기화 */
1920 useEffect ( ( ) => {
21+ clearAnonymousSendLetterCode ( ) ;
2022 setSendState ( {
2123 draftId : null ,
2224 receiverName : '' ,
Original file line number Diff line number Diff line change 33import Loader , { LoaderContainer } from '@/components/common/Loader' ;
44import { getAccessToken } from '@/utils/storage' ;
55import { useRouter } from 'next/navigation' ;
6- import { useEffect , useState } from 'react' ;
6+ import { useEffect } from 'react' ;
77import styled from 'styled-components' ;
88
99export default function Home ( ) {
Original file line number Diff line number Diff line change @@ -14,6 +14,7 @@ import useKakaoSDK from '@/hooks/useKakaoSDK';
1414import { userState } from '@/recoil/userStore' ;
1515import { getLetterShareStatus } from '@/api/letter/share' ;
1616import Loader , { LoaderContainer } from '@/components/common/Loader' ;
17+ import { setAnonymousSendLetterCode } from '@/utils/storage' ;
1718
1819const SendPreviewPage = ( ) => {
1920 const router = useRouter ( ) ;
@@ -96,6 +97,7 @@ const SendPreviewPage = () => {
9697 } ) ) ;
9798 letterCode = response . data . letterCode ;
9899 setLetterCode ( response . data . letterCode ) ;
100+ setAnonymousSendLetterCode ( response . data . letterCode ) ;
99101 } else {
100102 const response = await postSendLetter ( {
101103 draftId,
Original file line number Diff line number Diff line change @@ -7,9 +7,10 @@ import OauthButton from '@/components/signup/OauthButton';
77import { OAUTH } from '@/constants/oauth' ;
88import { SEND_COMPLETE_SUBTEXT } from '@/constants/send/message' ;
99import { sendLetterState } from '@/recoil/letterStore' ;
10- import { float , letterFloat } from '@/styles/animation' ;
10+ import { letterFloat } from '@/styles/animation' ;
1111import { theme } from '@/styles/theme' ;
1212import { OAuthType } from '@/types/login' ;
13+ import { clearAnonymousSendLetterCode } from '@/utils/storage' ;
1314import Image from 'next/image' ;
1415import { useRouter , useSearchParams } from 'next/navigation' ;
1516import React , { Suspense , useEffect , useState } from 'react' ;
@@ -50,11 +51,16 @@ const SendCompletePage = () => {
5051 }
5152 } ;
5253
54+ const handleExit = ( ) => {
55+ router . push ( '/login' ) ;
56+ clearAnonymousSendLetterCode ( ) ;
57+ } ;
58+
5359 return (
5460 < >
5561 < Layout >
5662 { isGuest && (
57- < button onClick = { ( ) => router . push ( '/login' ) } >
63+ < button onClick = { handleExit } >
5864 < CloseIcon
5965 src = "/assets/icons/ic_x.svg"
6066 width = { 24 }
Original file line number Diff line number Diff line change @@ -116,6 +116,24 @@ export const setInitUserToast = () => {
116116 }
117117} ;
118118
119+ /* anonymousSendLetterCode */
120+ export const setAnonymousSendLetterCode = ( anonymousSendLetterCode : string ) => {
121+ if ( typeof window !== 'undefined' ) {
122+ localStorage . setItem ( 'letterCode' , anonymousSendLetterCode ) ;
123+ }
124+ } ;
125+
126+ export const getAnonymousSendLetterCode = ( ) => {
127+ if ( typeof window !== 'undefined' ) {
128+ return localStorage . getItem ( 'anonymousSendLetterCode' ) ;
129+ }
130+ return null ;
131+ } ;
132+
133+ export const clearAnonymousSendLetterCode = ( ) => {
134+ localStorage . removeItem ( 'anonymousSendLetterCode' ) ;
135+ } ;
136+
119137export const getInitUserToast = ( ) : string | null => {
120138 if ( typeof window !== "undefined" ) {
121139 return sessionStorage . getItem ( "initUserToast" ) ;
You can’t perform that action at this time.
0 commit comments