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 #214

Conversation

kimsayhi
Copy link
Collaborator

@kimsayhi kimsayhi commented Jul 5, 2024

상품 상세

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

  • response 로 받은 아래의 데이터로 화면을 구현합니다.
    => favoriteCount : 하트 개수
    => images : 상품 이미지
    => tags : 상품태그
    => name : 상품 이름
    => description : 상품 설명

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

상품 문의 댓글

  • 문의하기에 내용을 입력하면 등록 버튼의 색상은 “3692FF”로 변합니다.
  • response 로 받은 아래의 데이터로 화면을 구현합니다
    => image : 작성자 이미지
    => nickname : 작성자 닉네임
    => content : 작성자가 남긴 문구
    => description : 상품 설명
    => updatedAt : 문의글 마지막 업데이트 시간

멘토님께


미리보기 링크

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

@lisarnjs lisarnjs left a comment

Choose a reason for hiding this comment

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

세환님 역시 역시 센스가 보여요!
개발자에게 센스도 아주 중요하거든요 코드를 짜는데 센스없게 짜는 사람 수두룩 한데!! 세환님한테서는 센스가 느껴지니 더욱 금방 성장하겠다는 생각이 드는데요 👍
이번 미션도 고생하셨습니다 ㅎㅎ
프로젝트도 화이팅!

@@ -0,0 +1,192 @@
import styled from "styled-components";

import { Button, Container } from "./CommonStyled";
Copy link
Collaborator

Choose a reason for hiding this comment

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

공용스타일 분리!! 너무 잘하셨어요!! 👍 💯

description: "",
name: "",
});
const [values, setValues] = useState(INIT_VALUSE);
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.

보통 src/styles 라는 폴더가 css 작업을 위한 폴더로 사용됩니다 :)

);
})
) : (
<S.EmptyCommentsContainer>
Copy link
Collaborator

Choose a reason for hiding this comment

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

이런 예외처리나 간단한 UI는 early return을 사용하는 것이 직관적이고 좋습니다!
삼항연산자가 나쁘다는 뜻은 아니지만 위 코드가 길어졌을 때 comment가 없을 떄의 코드를 보기까지의 과정이
불편하기 떄문이기도 해요!

};

useEffect(() => {
window.addEventListener("resize", onResize);
Copy link
Collaborator

Choose a reason for hiding this comment

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

onResize에 debounce를 적용시켜 본다면 ?!

timer = false;
}, 100);
useEffect(() => {
if (sizeName === "large") {
Copy link
Collaborator

Choose a reason for hiding this comment

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

객체지향프로그래밍과 비슷한 느낌으로 변형해보자면 이렇게 작성해볼 수 있을 것 같고 그럼 if else 문이 필요없어지게 됩니다!

const pageSizeWithSizeName = {
"large" : 10,
"medium" : 6,
"small" : 4
}

setPageSize(pageSizeWithSizeName[sizeName])


useEffect(() => {
if (!didMount) {
setDidMount(true);
Copy link
Collaborator

Choose a reason for hiding this comment

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

mount처럼 생명주기와 관련된 동작들을 state나 useEffect로 관리하면 더욱 예측하기 어려울 수 있으니 조심해주시는 것을 추천할게요!

@lisarnjs lisarnjs merged commit 77a6a69 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.

2 participants