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

[나지원] sprint10 #128

Conversation

najitwo
Copy link
Collaborator

@najitwo najitwo commented Nov 2, 2024

요구사항

기본

상품 등록 페이지

  • 상품 등록 페이지 주소는 "/addboard" 입니다.
  • 게시판 이미지는 최대 한개 업로드가 가능합니다.
  • 각 input의 placeholder 값을 정확히 입력해주세요.
  • 이미지를 제외하고 input 에 모든 값을 입력하면 '등록' 버튼이 활성화 됩니다.

상품 상세 페이지

  • 상품 상세 페이지 주소는 "/board/{id}" 입니다.
  • 댓글 input 값을 입력하면 '등록' 버튼이 활성화 됩니다.
  • 활성화된 '등록' 버튼을 누르면 댓글이 등록됩니다

심화

  • 회원가입, 로그인 api를 사용하여 받은accessToken을 사용하여 게시물 등록을 합니다.
  • '등록' 버튼을 누르면 게시물 상세 페이지로 이동합니다.

스크린샷

배포 페이지: https://najimarket.vercel.app/boards

상품 등록 페이지

najimarket vercel app_addboard

상품 상세 페이지

najimarket vercel app_addboard (1)

멘토에게

  • 로그인 페이지는 추가를 못해서 로그인 로직이 하드 코딩 되어있습니다.

@najitwo najitwo requested a review from GANGYIKIM November 2, 2024 13:50
@najitwo najitwo added the 매운맛🔥 뒤는 없습니다. 그냥 필터 없이 말해주세요. 책임은 제가 집니다. label Nov 2, 2024
Copy link
Collaborator

@GANGYIKIM GANGYIKIM left a comment

Choose a reason for hiding this comment

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

지원님 이번 스프린트 미션 고생하셨습니다.

components/ui/Dropdown.tsx Show resolved Hide resolved
components/board/AddCommentForm.tsx Show resolved Hide resolved
components/board/EditCommentForm.tsx Show resolved Hide resolved
components/board/EditCommentForm.tsx Show resolved Hide resolved
components/boards/BestBoard.tsx Show resolved Hide resolved
}

const AuthorInfo = ({ className, nickname, image, date }: Props) => {
const AuthorInfo = ({ nickname, date, className, image }: Props) => {
Copy link
Collaborator

Choose a reason for hiding this comment

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

P3:

Suggested change
const AuthorInfo = ({ nickname, date, className, image }: Props) => {
const AuthorInfo = ({ nickname, date, className ='' , image }: Props) => {

Comment on lines +25 to +26
const allowedTypes = ["image/png", "image/jpeg"];
if (!allowedTypes.includes(nextValue.type)) return;
Copy link
Collaborator

Choose a reason for hiding this comment

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

P3:
👍

Copy link
Collaborator

Choose a reason for hiding this comment

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

사용자 피드백까지 주면 더 좋을 것 같아요~

Comment on lines +10 to +16
const HeartButton = ({ favoriteCount, className }: HeartButtonProps) => {
return (
<button
type="button"
aria-label="좋아요 버튼"
className={`${styles.heartButton} ${className}`}
>
Copy link
Collaborator

Choose a reason for hiding this comment

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

P3:
아직 필요하지 않으셔서 추가하지 않은 것 같지만 버튼이니 나중에 onClick 함수를 넘길 수 있게 추가해주세요~

components/ui/Input.tsx Show resolved Hide resolved
}, [refreshAccessToken]);

return (
<AuthContext.Provider value={{ accessToken, login, logout }}>
Copy link
Collaborator

Choose a reason for hiding this comment

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

P2:
멘토링때 말씀드린것처럼 context 사용시 전달되는 value는 자식들의 잦은 리렌더링을 막기위해 useMemo를 감싸 전달합니다.
관련해서 읽으실만한 글 링크드립니다~

https://velog.io/@velopert/react-context-tutorial

@GANGYIKIM GANGYIKIM merged commit f8b22be into codeit-bootcamp-frontend:Next-나지원 Nov 5, 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