-
Notifications
You must be signed in to change notification settings - Fork 8
[5주차] 심여은 미션 제출합니다 #20
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
base: main
Are you sure you want to change the base?
Conversation
ZUITOPIA
left a comment
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.
안녕하세요, 여은님
몇 가지 제안 사항은 코멘트로 남겨두었습니다
이번주도 정말 고생많으셨습니다!! 👍👍
| <header css={header}> | ||
| <div css={leftWrapper}> | ||
| <img src={backIcon} css={headerBtn} /> | ||
| <span css={headerTitle}>{"Carat"}</span> |
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.
이 부분 하드코딩 보다는 사용자 데이터를 직접 불러와서 다른 계정 주인이 접속하더라도 그 user의 nickname을 가져와서 화면에 보일 수 있도록 고려해주는게 좋을 것 같아요!
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.
오 이 부분은 사용자 데이터를 atom에 정의해서 적용해 보겠습니다!
…성화 시 submit 버튼 비활성화
jejukyj
left a comment
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.
안녕하세요 여은님, 이번 코드리뷰를 맡게 된 고윤정입니다!
주희님께서 좋은 리뷰를 많이 남겨주셔서 저는 궁금한 점 몇가지만 추가로 달았습니다 ㅎㅎ
이번 미션도 고생 많으셨습니다~
| width: 52px; | ||
| height: 36px; | ||
| border-radius: 24px; | ||
| background: var(--my-bubble-color); |
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.
css 속성으로 var() 함수 사용한게 여러번 보여서 확인해보니 사용자 지정 속성을 지정해줄 수 있는 방법이었네요! 배워갑니다🤩
| const [chatInput, setChatInput] = useState(''); | ||
| const inputRef = useRef(null); | ||
| const users = useRecoilValue(userState); | ||
| const [messages, useMessages] = useRecoilState(messageState); |
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.
메시지 state를 recoil에서 관리하고 있는데 이를 또 state에 넣은 이유가 있을까요?
| default: [ | ||
| { | ||
| roomId: 1, | ||
| joinedUsers: [0, 1], |
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.
혹시 joinedUsers를 따로 설정해준 이유가 있을까요?
미션 소감
안녕하세요, LG U+유레카 1기 프론트엔드 반 심여은입니다.
이번 주차에는 지난 주차에 작성한 코드에 채팅 목록 페이지를 추가하여 Routing을 구현하고, 상태 관리 라이브러리를 사용해보는 미션을 하였습니다. 상태 관리 라이브러리는 Recoil을 사용하였는데요, useSetRecoilState를 사용하지 못했기 때문에 사실 제대로 사용해보진 못했습니다ㅜㅜ..또한 채팅 목록 페이지에서 사용자의 이름을 검색하는 기능도 구현하지 못했네요. 이 부분은 추후 리팩토링을 통해 적용해보겠습니다...!
상태 관리 라이브러리를 어떤 것을 적용해볼지 고민하다가 Recoil을 선택했는데, 전역 상태 관리에 익숙하지 않은 제게 확실히 편리한 라이브러리인 것 같습니다! 라이브러리를 더 공부해서 React의 상태 관리에 더 익숙해졌으면 좋겠네요...!
미션에서 특별히 신경 쓴 부분들
KEY QUESTION
1. SPA / MPA / CSR / SSR 이란 무엇인가요?
2. React에서 상태는 어떻게 관리할 수 있나요?
3. 어떤 상태관리 라이브러리를 사용했고, 그것의 특징은 무엇인가요?
결과 화면