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

[김종화] Sprint7 #212

Merged

Conversation

KJongHwa
Copy link
Collaborator

@KJongHwa KJongHwa commented Jul 5, 2024

체크리스트 [기본]

상품 상세

  • 상품 상세 페이지 주소는 “/items/{productId}” 입니다.

  • response 로 받은 아래의 데이터로 화면을 구현합니다.

=> favoriteCount : 하트 개수
=> images : 상품 이미지
=> tags : 상품태그
=> name : 상품 이름
=> description : 상품 설명

  • 목록으로 돌아가기 버튼을 클릭하면 중고마켓 페이지 주소인 “/items” 으로 이동합니다

상품 문의 댓글

  • 문의하기에 내용을 입력하면 등록 버튼의 색상은 “3692FF”로 변합니다.

  • response 로 받은 아래의 데이터로 화면을 구현합니다

=> image : 작성자 이미지
=> nickname : 작성자 닉네임
=> content : 작성자가 남긴 문구
=> description : 상품 설명
=> updatedAt : 문의글 마지막 업데이트 시간

스크린샷

image

image

멘토에게

  • 스프린터 미션 6를 못했어서 6 템플릿 코드를 가져와서 7만 작성했습니다.
  • 반응형은 구현하지 못했습니다. 개인적으로 주말에 실현해보도록 하겠습니다.

@KJongHwa KJongHwa requested a review from wlgns2223 July 5, 2024 11:22
@KJongHwa KJongHwa added the 매운맛🔥 뒤는 없습니다. 그냥 필터 없이 말해주세요. 책임은 제가 집니다. label Jul 5, 2024
Copy link
Collaborator

Choose a reason for hiding this comment

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

해당 함수가 사용되는 곳을 확인해보니까 목적으로 사용되고 있더라구요. 아마도 템플릿코드가 이렇게 되어있었나요?
함수는 웬만하면 하나의 목적을 가져야 합니다. 그러나 현재에는 productcomment를 불러오는거에 둘다 쓰이고 있어요.
if문이 두개인걸 봐도 알 수 있습니다. ㅎㅎ 그것보다 두 함수로 분리해서 getProductById , getCommentById와 같이 따로 관리하는게 더 낫다고 생각합니다.

Comment on lines +113 to +115
if (!item) {
return <Container>상품을 불러오는 중입니다.</Container>;
}
Copy link
Collaborator

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.

Styled-Components들이 한 파일이 점점 많아져서 파일이 길어지면, Styled-Components 부분만 따로 떼어내서 다른 파일에 관리하는게 더 좋을 것 같아요. 파일의 길이가 길어지면 가독성이 좀 떨어지기 시작합니다 ㅎㅎ

function CommentsSection() {
const { productid } = useParams();
const [comments, setComments] = useState([]);
const [inputValue, setInputValue] = useState("");
Copy link
Collaborator

Choose a reason for hiding this comment

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

특히 프론트엔드에서 변수명을 정할때 개발자적인 관점보다는 비즈니스로직(기능적)관점에서 정하는게 좀 더 나은것 같더라구요. 그래서 여기는 inputValue보다는 comment가 더 어울릴 것 같습니다.

Comment on lines +168 to +172
<TextInput
placeholder="개인정보를 공유 및 요청하거나, 명예 훼손, 무단 광고, 불법 정보 유포시 모니터링 후 삭제될 수 있으며, 이에 대한 민형사상 책임은 게시자에게 있습니다."
type="text"
onChange={handleInputChange}
/>
Copy link
Collaborator

Choose a reason for hiding this comment

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

TextArea로 선언해주신 점 잘 하셨습니다 !

/>
<NicknameContainer>
<Nickname>{comment.writer.nickname}</Nickname>
<Time>{TimeCheck(comment.createdAt)}</Time>
Copy link
Collaborator

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.

다만 함수인 만큼 동사로 시작하는 네이밍이 좋을 것 같아요. ex checkTime / calculateCommentTime

@KJongHwa KJongHwa changed the base branch from main to React-김종화 July 8, 2024 05:07
@wlgns2223 wlgns2223 merged commit 4cd7734 into codeit-bootcamp-frontend:React-김종화 Jul 8, 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.

4 participants