Skip to content

Conversation

@evan7484
Copy link

@evan7484 evan7484 commented May 2, 2025

📚 워크북 링크

5주차 워크북
https://valuable-hoodie-078.notion.site/5-Thinking-in-React-1e43f3c83642805fb736c7df92eb2b75?pvs=4
6주차 워크북
https://valuable-hoodie-078.notion.site/6-1eb3f3c8364280f2bc9bffe08c23d3de?pvs=4

📝 변경/추가 사항 요약

  • 5주차 실습 변경
  • 삭제 버튼 클릭 시 그 행 삭제
  • 수정 버튼 클릭 시 수정 버튼이 저장버튼으로 변하고 product name과 price가 input으로 변경 저장누르면 다시 td로 변경
  • 6주차 실습 사항
  • 화면 4개 구성 및 라우팅 완료

✅ 리뷰 요구사항

5주차 리뷰 요구사항

삭제와 수정 컴포넌트를 다른 기능이라고 생각해서 둘 다 새로운 파일을 만들어서 했는데 이렇게 하는 게 좋은 설계방법인지 궁금합니다!
그리고 ProductRow에서 수정을 위해 상태를 3개나 만들었는데 더 적게 하는 방법은 없을까 궁금합니다!
그리고 ProductRow에 수정과 삭제를 추가해야한다고 생각해서 App.js에서 부터 많은 컴포넌트를 거쳐 props로 product를 가져왔는데 이것 또한 설계방법에서 지양해야하는 것인지 궁금합니다.

6주차 리뷰 요구사항

라우팅에서 이미 뒤로가기 기능과 같은 기능에서 div 태그에 onClick 이벤트를 주었는데 프로젝트에서 실제로 사용되려면 애초에 버튼으로 설계를 지향해야할까요?
그리고 그래야한다면
image
이런 리스트 자체를 버튼 태그로 감싸서 설계해야 하는 궁금합니다!

📸 확인 방법 (스크린샷)

5주차 스크린샷

image
image
image
image
image

6주차 스크린샷

image
image
image
image

<제출 전 체크리스트>

  • [] week00 폴더 내에 자신의 폴더를 새로 만드셨나요?
  • [] 자신 폴더 외의 다른 사람의 폴더에서 코드를 수정하지 않았나요?

@evan7484 evan7484 changed the title [5주차] Thinking in React [5주차] Thinking in React + [6주차] 라우팅 May 9, 2025
@evan7484 evan7484 changed the title [5주차] Thinking in React + [6주차] 라우팅 [5주차] Thinking in React + [6주차] 라우팅 및 컴포넌트 스타일링 May 9, 2025
Copy link
Member

@Turtle-Hwan Turtle-Hwan left a comment

Choose a reason for hiding this comment

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

5주차 리뷰 요구사항
삭제와 수정 컴포넌트를 다른 기능이라고 생각해서 둘 다 새로운 파일을 만들어서 했는데 이렇게 하는 게 좋은 설계방법인지 궁금합니다!
그리고 ProductRow에서 수정을 위해 상태를 3개나 만들었는데 더 적게 하는 방법은 없을까 궁금합니다!
그리고 ProductRow에 수정과 삭제를 추가해야한다고 생각해서 App.js에서 부터 많은 컴포넌트를 거쳐 props로 product를 가져왔는데 이것 또한 설계방법에서 지양해야하는 것인지 궁금합니다.

6주차 리뷰 요구사항
라우팅에서 이미 뒤로가기 기능과 같은 기능에서 div 태그에 onClick 이벤트를 주었는데 프로젝트에서 실제로 사용되려면 애초에 버튼으로 설계를 지향해야할까요?
그리고 그래야한다면 이런 리스트 자체를 버튼 태그로 감싸서 설계해야 하는 궁금합니다!


  1. 삭제와 수정 기능이 별도의 기능은 맞으나 현재 상황에서는 버튼 하나니깐 굳이 컴포넌트로 파일을 만들진 않아도 됩니다! 만드는 것이 더 복잡하기 때문에..

  2. {} JSON 방식으로 묶어서 하나의 객체로 상태를 관리할 수는 있겠지만, 오히려 더 복잡해질 수 있어서, 상태를 더 적게 만들기보단 상태를 더 잘 분리하는 것을 목표로 가져가면 좋을 거 같습니다

  3. 많은 컴포넌트를 거쳐 props로 전달되는 것을 props drilling이라 하는데 실제로 해봤다면 느껴지겠지만 많이 불편합니다. 그래서 전역 상태 관리라는 개념이 등장했죠. 근데 어쩔 수 없긴 합니다

  4. button으로 만드는 것이 의미론적으로 (semmentic) 적으로 좋아 보입니다. 근데 만약 navigate 관련이라면 저라면 태그로 할 거 같습니다
    그래야 한다면 div 전체를 버튼이나 link로 한번 더 감싸면 편하죠

@evan7484
Copy link
Author

리뷰 감사합니다!!

Copy link
Collaborator

@ho0010 ho0010 left a comment

Choose a reason for hiding this comment

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

LGTM!

let lastCategory = null;

products
.sort((a, b) => a.category > b.category)
Copy link
Collaborator

Choose a reason for hiding this comment

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

#74

참고하시면 좋을 것 같아요~

Copy link
Author

Choose a reason for hiding this comment

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

감사합니다!!

@ho0010 ho0010 merged commit b3c92c9 into main May 18, 2025
1 check failed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants