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

[김법균] week11 #359

Conversation

bk-git-hub
Copy link
Collaborator

요구사항

기본

  • 폴더 페이지에 필요한 “폴더 이름 변경”, “폴더 추가”, “폴더 공유”, “폴더 삭제”, “링크 삭제”, “폴더에 추가” 모달을 만들어 주세요.
  • “폴더 공유” 모달의 기능은 클릭시 ‘{호스트 주소}/shared/{currrentFolderId}’ 로 접속 가능한 주소를 공유 또는 클립보드에 복사 가능하게 해주세요.
  • 팀내 2 ~ 3명이 짝을 지어 페어프로그래밍으로 여러 모달을 만들 때 사용할 모달 컴포넌트를 만들어 주세요.
  • 카드에 있는 케밥 버튼을 클릭할 경우 보여야 할 팝오버를 만들어 주세요.

주요 변경사항

  • 모달창 구현
  • 공유 기능 추가

스크린샷

image

image

멘토에게

  • 감사합니다

@bk-git-hub bk-git-hub requested a review from Jay-WKJun April 28, 2024 10:46
@bk-git-hub bk-git-hub added the 매운맛🔥 뒤는 없습니다. 그냥 필터 없이 말해주세요. 책임은 제가 집니다. label Apr 28, 2024
Copy link
Collaborator

@Jay-WKJun Jay-WKJun left a comment

Choose a reason for hiding this comment

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

고생하셨습니다. 👍

  • CSS가 깔끔하네요!
  • 로직을 함수와 파일들을 잘 나눠주셨네요.

return (
<button onClick={onClick} className={styles.btn}>
<button onClick={onClick} className={`${className} ${styles.btn}`}>
Copy link
Collaborator

Choose a reason for hiding this comment

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

매번 백틱과 ${}를 열어서 하나씩 조합하는 건 굉장히 귀찮을 일일 것입니다.

이걸 해결할 수 있는 방법을 고민해보면 좋을 것 같습니다.

Comment on lines +24 to +47
const UTIL_BUTTONS_PROPS = [
{
imgSrc: shareIcon,
btnText: '공유',
alt: '공유 아이콘',
id: 1,
onClick: onShare,
},

{
imgSrc: penIcon,
btnText: '이름 변경',
alt: '이름 변경 아이콘',
id: 2,
onClick: onFolderNameChangeClick,
},
{
imgSrc: deleteIcon,
btnText: '삭제',
alt: '삭제 아이콘',
id: 3,
onClick: onFolderDeleteClick,
},
];
Copy link
Collaborator

Choose a reason for hiding this comment

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

컴포넌트 안에 이런 고정 constant를 넣어두면 안됩니다.

컴포넌트의 특징과 그 내부의 변수가 어떻게 생성되는지 알아보시면 좋을 것 같습니다.

Comment on lines +36 to +39
const DROPDOWN_LIST_ITEMS = [
{ text: '삭제하기', onClick: handleLinkDelete },
{ text: '폴더에추가', onClick: handleAddToFolder },
];
Copy link
Collaborator

Choose a reason for hiding this comment

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

위와 동일하게 상수값은 컴포넌트가 아닌 다른 곳에서 선언해주는 것이 좋습니다.

<div className={styles.modalContainer}>
<div className={styles.modalWrapper}>
<button onClick={onClose} className={styles.closeButton}></button>
{children}
Copy link
Collaborator

Choose a reason for hiding this comment

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

children을 잘 써주셨네요. 👍

</div>
<ul className={styles.folderList}>
{curFolders.map((folder) => (
<li>
Copy link
Collaborator

Choose a reason for hiding this comment

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

map으로 생성되는 component는 key값을 꼭 지정해주시는 편이 좋습니다.

@Jay-WKJun Jay-WKJun merged commit 20c1077 into codeit-bootcamp-frontend:part2-김법균 Apr 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
매운맛🔥 뒤는 없습니다. 그냥 필터 없이 말해주세요. 책임은 제가 집니다.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants