Skip to content
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

인증부분 화면 구성을 진행합니다. #22

Open
wants to merge 8 commits into
base: develop
Choose a base branch
from

Conversation

jaychang99
Copy link
Member

@jaychang99 jaychang99 commented Aug 27, 2023

작성자: @jaychang99

Related to

체크 리스트

  • 적절한 제목으로 수정했나요?
  • 상단에 이슈 번호를 기입했나요?
  • Target Branch를 올바르게 설정했나요?
  • Label을 알맞게 설정했나요?

작업 내역

  • 인증 페이지 3군데를 화면구성 작업합니다.
    • /login 로그인 페이지: 카카오 로그인 버튼이 있으며, 상단에 쩝쩝대학 로고가 노출됩니다.
    • /register 페이지: 카카오 로그인으로 최초 유입된 유저들이 쩝쩝대학에서 사용할 닉네임을 세팅하는 곳입니다.
    • /register/success 페이지: /register 페이지에서 최초 닉네임 성공 후 랜딩되는 페이지입니다.

인증 페이지인 만큼 각 페이지에는 서버 사이드의 접근제한 로직이들어가 있습니다.
예를 들어 로그인 한 상태에서 로그인 페이지는 접근 불가하며, 회원가입 페이지도 이미 회원가입 완료된 유저의 경우 접근 불가합니다.

image

image

image

image

비고

  • 공통 컴포넌트로 <Logo /> 컴포넌트를 추가하였습니다. 범용적으로 사용할 컴포넌트일 것 같습니다.
  • 카카오 로그인 버튼은 카카오 개발자
    공식 홈페이지에서 png 이미지 형태로 가져왔습니다.

@jaychang99 jaychang99 added the feature 신규 컴포넌트/기능 개발 (제일 일반적) label Aug 27, 2023
@jaychang99 jaychang99 self-assigned this Aug 27, 2023
Copy link
Member

@hoon5083 hoon5083 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

수고하셨습니다!

src/components/logo/Logo.tsx Show resolved Hide resolved
src/feature/auth/auth.register/views/ViewRegister.tsx Outdated Show resolved Hide resolved
Copy link
Member Author

@jaychang99 jaychang99 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@hoon5083 리뷰 감사합니다! 제안사항을 모두 반영하였습니다!

src/components/logo/Logo.tsx Show resolved Hide resolved
src/feature/auth/auth.register/views/ViewRegister.tsx Outdated Show resolved Hide resolved
Copy link
Collaborator

@sera2222 sera2222 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

수고하셨습니다!

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이건 그냥 궁금해서 여쭤보는 건데, feature 하위 폴더명을 CamelCase가 아닌 dot notation으로 표기하신 이유가 궁금합니다. 이렇게 하는게 일반적인 컨벤션인가요?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sera2002 오... 넵넵 좋은 질문입니다. [일반적인 컨벤션] 은 아니고... 제가 최근에 진행한 프로젝트가 이렇게 했다 보니 무의식중에 한 것 같네요 😓

음... 글쎄요...ㅋㅋㅋ 이유는 없습니다만 세라님 말씀처럼 하나로 통일하는 것이 좋을 것 같아요 혹시 세라님 작업분 중 feature 안에 또 저렇게 이중 폴더가 들어가는 부분이 있나용?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

https://askubuntu.com/questions/413150/is-it-bad-practice-for-folder-name-to-contain-a-dot-how-about-a-file-name-w

음.. 이런 배경도 있을 수 있겠군요.. CLI 상에서 조작하기 어렵다는 점도? 있을 것 같고 한데 뭔가 조금 '이 폴더는 일반적인 폴더보다는 조금 다른 폴더이다' 라는 느낌을 강조하고 싶었던 것 같습니다. 😅

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

넵 저는 feature 내에 위치한 이중 폴더 이름을 CamelCase로 해놨었는데, dot notation으로 통일하는 것도 뭔가 보기에도 깔끔하고 괜찮을 것 같습니다!

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

오 넵 근데 뭔가 컨벤션(?) 에 예외를 두는 것 같아서 그냥 전부 camelCase 로 통일하는 것은 조금 그럴까용? 뭐가 좋을지 모르겠네유 @sera2002 @hoon5083

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

저는 camelCase와 dot notation의 용도가 다른거 같긴 합니다. dot notation으로 하면 좀더 계층적임을 잘 보여주지 않나 싶어요
camelCase는 단순히 여러단어를 구분하기 위한 용도 같구요

Comment on lines +1 to +8
export const API_ENDPOINT = {
auth: {
kakao: {
login: "/auth/kakao/login",
logout: "/auth/kakao/logout",
},
},
};
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이걸 사용하다보니 느낀건데, 최종 리소스 기준으로만 시작하는게 나은거 같더라구요.
지금 상황에서는 auth.kakao.login 으로 사용한다면, 맨 앞에 auth가 아닌 다른 네이밍으로 바뀌는 상황에 대응하기가 힘들어서, kakao.login 정도면 앞쪽 url 변화에 유연하게 사용할 수 있지 않을까 합니다.
다른 플젝에서 사용한 api 엔드포인트 파일 공유드려 봅니다...

export const API_ROUTES = {
  token: { root: () => "/token/", refresh: () => "/token/refresh/" },
  users: {
    my: () => "/users/my/",
    signUp: () => "/users/sign-up/",
    changePassword: () => "/users/my/change-password/",
  },
  boards: {
    root: () => "/boards/",
    summary: () => "/boards/summary/",
  },
  posts: {
    bySlug: (slug: string) => `/boards/${slug}/posts/`,
    bySlugAndId: (slug: string, id: number) => `/boards/${slug}/posts/${id}/`,
    uploadImage: (slug: string) => `/boards/${slug}/posts/upload-image/`,
  },
  comments: {
    bySlugAndPostId: (slug: string, postId: number) => `/boards/${slug}/posts/${postId}/comments/`,
    bySlugAndPostIdAndId: (slug: string, postId: number, id: number) =>
      `/boards/${slug}/posts/${postId}/comments/${id}/`,
  },
  categories: {
    bySlug: (slug: string) => `/boards/${slug}/categories/`,
  },
};

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature 신규 컴포넌트/기능 개발 (제일 일반적)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants