-
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
[#3] step1 페이지 ui 및 페이지간 이동 구현 #8
Conversation
function PaginationBtn({ step }: { step: number }) { | ||
const params = useSearchParams() | ||
|
||
const stepParam = params.get('step') | ||
|
||
return ( | ||
<Link | ||
className={cn(S.btn, { | ||
[S.darken]: stepParam && parseInt(stepParam) === step, | ||
})} | ||
href={`/verification/ibulsin?step=${step}`} | ||
> | ||
{step} | ||
</Link> | ||
) | ||
} |
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.
useSearchParams Suspense를 감싸서 해결하는게 아니라 use client
를 이용해서 client componetn로 써야될거같네요
{Array.from({ length: 3 }, (_, idx) => ( | ||
<PaginationBtn key={idx} step={idx + 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.
그냥 이럴떄는 [1,2,3].map()
형식으로 많이 씁니다
<body> | ||
<Providers> | ||
<Recoil> | ||
<Layout>{children}</Layout> | ||
</Recoil> | ||
</Providers> | ||
</body> |
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.
👍 useRouter issue
작업 내용
전체적인 ui 를 작성했습니다.
다음 단계 버튼을 누르면 query string이 step=2 로 변하며 step2 로 이동하게 됩니다.
textarea 는 최대 500자 까지 적을 수 있습니다.
상단에서 진행 상황을 볼 수 있으며 클릭시 해당 step 으로 바로 이동할 수 있습니다.
상단 좌측의 left chevron 버튼을 누르면 경고 문구가 alert 됩니다. 예를 누르게 된다면 메인 페이지로 빠져나가게 됩니다.
중요한 포인트
!! textarea 의 데이터는 현재 저장되지 않습니다. 추후 구현 예정입니다. (컴포넌트 unmount 시 저장 x)