-
Notifications
You must be signed in to change notification settings - Fork 11
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
9회차 과제 - 김진현 #6
base: main
Are you sure you want to change the base?
9회차 과제 - 김진현 #6
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
진짜 회사 소개 페이지인 줄 알았습니다~ 로그인 기능도 구현하시고 코드도 가독성 좋고 깔끔하게 구현하신 것 같아요! 많이 배우고 갑니다!!
}; | ||
|
||
const handleDeleteNotice = (index) => { | ||
const updatedNotices = notices.filter((_, i) => i !== index); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
여기서 작성하신 언더바는 무엇인가요?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
이 코드에서 요소 자체는 필요하지 않고 인덱스만 필요하기 때문에 첫 번째 요소는 사용되지 않았고, 의미 없는 매개변수를 나타내기 위해 사용된 언더바 입니다
value={newNotice} | ||
onChange={(e) => setNewNotice(e.target.value)} | ||
/> | ||
<button onClick={handleAddNotice}>Add Notice</button> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
새 공지사항 추가 기능을 정말 깔끔하게 구현하신 것 같아요!! 이렇게 간단하게 구현하는 방법도 알고가네요~!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
좋게 봐주셔서 감사합니다~
코드 리뷰 해주셔서 감사드리고 고생 많으셨습니다 :)
@YoonKeumJae 코드리뷰 완료 됐습니다~ |
회사 소개 페이지 만들기 (Boston Consulting Group) 결과화면
메인 화면

로그인 화면

회사 소개

회사 목표

공지사항

1. 개발한 기능
홈페이지 레이아웃 및 내비게이션 바 추가: 메인 페이지에 네비게이션 바를 추가하고, Home, About, Goals, Notices, Sign In 페이지로의 라우팅을 구현했습니다. 네비게이션 바는 로고와 링크 목록을 포함하며, 각 링크를 클릭하면 해당 페이지로 이동합니다.
로그인 페이지 구현: 사용자명과 비밀번호 입력란 및 로그인 버튼을 포함한 일반적인 로그인 화면을 구현했습니다. 사용자 입력을 처리하기 위해 상태 관리를 추가하였습니다.
각 페이지의 콘텐츠 구현: About, Goals, Notices, Profile 페이지를 추가하고, 각각의 페이지에 해당하는 내용을 채웠습니다. Notices 페이지는 공지사항의 CRUD 기능을 구현하였습니다.
2. 개발할 때 유의깊게 개발한 부분
라우팅 설정: 각 페이지로의 라우팅이 원활하게 작동하도록 react-router-dom을 사용하여 설정했습니다. 특히 Layout 컴포넌트를 통해 공통 레이아웃을 유지하면서 각 페이지가 적절히 렌더링되도록 했습니다.
스타일링: 각 컴포넌트의 CSS를 모듈화하고, 스타일링을 일관성 있게 유지하기 위해 노력했습니다. 로그인 페이지의 경우 사용자 친화적인 UI를 구현하기 위해 CSS를 작성했습니다.
상태 관리: 로그인 페이지와 공지사항 페이지에서의 상태 관리를 위해 React의 useState 훅을 사용하여 사용자 입력을 관리하고, 이를 통해 동적으로 콘텐츠를 업데이트하도록 했습니다.
3. 개발하면서 들었던 의문 사항