-
Notifications
You must be signed in to change notification settings - Fork 37
[김승석] Sprint11 #319
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
Merged
withyj-codeit
merged 23 commits into
codeit-bootcamp-frontend:Next-김승석
from
kss761036:Next-김승석-sprint11
Mar 4, 2025
The head ref may contain hidden characters: "Next-\uAE40\uC2B9\uC11D-sprint11"
Merged
[김승석] Sprint11 #319
Changes from 1 commit
Commits
Show all changes
23 commits
Select commit
Hold shift + click to select a range
592a3d9
feat: 베스트 게시물 기능 추가
c94f749
feat: 게시글 SSR로 작업
7c3cfc5
feat: 게시글 orderBy 기능 작업
498ba56
feat: 게시글 검색 기능 구현
32ae842
feat: 반응형 작업 완료
8d3017f
feat: 반응형 pagesize 작업 및 로딩중, 비어있음 적용
2f83b8f
feat: pagesize 무한스크롤 기능 및 useOutsideClick hook 추가
87d6588
fix: 네트리파이 배포 오류 수정
e8cb077
style: css파일 삭제 후 인라인속성으로 변경
ecc2dbb
fix: 반응형 버그 수정
0011b09
refactor: 날짜포맷 dayjs 라이브러리로 변경
863aca2
pref: boards 데이터 불러오기 성능 개선
406d403
pref: useCallback으로 boards 데이터 불러오기 함수 메모이제이션
3871bf7
style: board 검색 form태그 추가 시멘틱하게 수정
fe6b0f8
feat: 게시글 작성, 게시글 상세 작업완료
ae625b6
refactor: 컴포넌트 분리
a63a913
feat: 입력값 입력 시 버튼 활성화
9fe291d
feat: 반응형 작업완료
5d3c518
fix: 반응형 스타일 수정
59e5603
feat: 회원가입, 로그인 html, css 작성
2777c37
feat: 로그인, 회원가입 기능 작업 완료
eb288f0
Merge branch 'Next-김승석' into Next-김승석-sprint11
kss761036 9ba593a
Merge branch 'Next-김승석' into Next-김승석-sprint11
kss761036 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,92 @@ | ||
| import FormInput from "@/components/form/form-input"; | ||
| import styles from "./../signup/signup.module.css"; | ||
| import { useState } from "react"; | ||
| import Link from "next/link"; | ||
|
|
||
| export default function Page() { | ||
| const [loginValue, setLoginValue] = useState({ | ||
| email: "", | ||
| password: "", | ||
| }); | ||
|
|
||
| const onChange = (e: React.ChangeEvent<HTMLInputElement>) => { | ||
| const { name, value } = e.target; | ||
| setLoginValue((prev) => ({ | ||
| ...prev, | ||
| [name]: value, | ||
| })); | ||
| }; | ||
|
|
||
| return ( | ||
| <div className={styles.login_wrap}> | ||
| <div className={styles.logo}> | ||
| <Link href="/"> | ||
| <img src="/assets/img/logo.svg" alt="로고" /> | ||
| </Link> | ||
| </div> | ||
| <form action=""> | ||
|
||
| <ul className={styles.login_list}> | ||
| <li> | ||
| <div className={styles.title}>이메일</div> | ||
| <div className={styles.content}> | ||
| <FormInput | ||
| type="email" | ||
| name="email" | ||
| placeholder="이메일을 입력해주세요" | ||
| onChange={onChange} | ||
| value={loginValue.email} | ||
| /> | ||
| </div> | ||
| </li> | ||
| <li> | ||
| <div className={styles.title}>비밀번호</div> | ||
| <div className={styles.content}> | ||
| <FormInput | ||
| type="password" | ||
| name="password" | ||
| placeholder="비밀번호를 입력해주세요" | ||
| onChange={onChange} | ||
| value={loginValue.password} | ||
| /> | ||
| </div> | ||
| </li> | ||
| <li> | ||
| <button className="btn round block large" disabled={true}> | ||
|
||
| 로그인 | ||
| </button> | ||
| </li> | ||
| <li> | ||
| <div className={styles.sns}> | ||
| <h3>간편 로그인하기</h3> | ||
| <ul> | ||
| <li> | ||
| <Link href=""> | ||
| <img | ||
| src="/assets/img/icon_google.svg" | ||
| alt="구글 간편로그인" | ||
| /> | ||
| </Link> | ||
| </li> | ||
| <li> | ||
| <Link href=""> | ||
| <img | ||
| src="/assets/img/icon_kakao.svg" | ||
| alt="카카오 간편로그인" | ||
| /> | ||
| </Link> | ||
| </li> | ||
| </ul> | ||
| </div> | ||
| </li> | ||
| <li> | ||
| <div className={styles.link}> | ||
| <p> | ||
| 판다마켓이 처음이신가요? <Link href="/signup">회원가입</Link> | ||
| </p> | ||
| </div> | ||
| </li> | ||
| </ul> | ||
| </form> | ||
| </div> | ||
| ); | ||
| } | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,118 @@ | ||
| import FormInput from "@/components/form/form-input"; | ||
| import styles from "./signup.module.css"; | ||
| import { useState } from "react"; | ||
| import Link from "next/link"; | ||
|
|
||
| export default function Page() { | ||
| const [signupValue, setSignupValue] = useState({ | ||
| email: "", | ||
| nickname: "", | ||
| password: "", | ||
| passwordConfirmation: "", | ||
| }); | ||
|
|
||
| const onChange = (e: React.ChangeEvent<HTMLInputElement>) => { | ||
| const { name, value } = e.target; | ||
| setSignupValue((prev) => ({ | ||
| ...prev, | ||
| [name]: value, | ||
| })); | ||
| }; | ||
|
|
||
| return ( | ||
| <div className={styles.login_wrap}> | ||
| <div className={styles.logo}> | ||
| <Link href="/"> | ||
| <img src="/assets/img/logo.svg" alt="로고" /> | ||
| </Link> | ||
| </div> | ||
| <form action=""> | ||
| <ul className={styles.login_list}> | ||
| <li> | ||
| <div className={styles.title}>이메일</div> | ||
| <div className={styles.content}> | ||
| <FormInput | ||
| type="email" | ||
| name="email" | ||
| placeholder="이메일을 입력해주세요" | ||
| onChange={onChange} | ||
| value={signupValue.email} | ||
| /> | ||
| </div> | ||
| </li> | ||
| <li> | ||
| <div className={styles.title}>닉네임</div> | ||
| <div className={styles.content}> | ||
| <FormInput | ||
| type="text" | ||
| name="nickname" | ||
| placeholder="닉네임 입력해주세요" | ||
| onChange={onChange} | ||
| value={signupValue.nickname} | ||
| /> | ||
| </div> | ||
| </li> | ||
| <li> | ||
| <div className={styles.title}>비밀번호</div> | ||
| <div className={styles.content}> | ||
| <FormInput | ||
| type="password" | ||
| name="password" | ||
| placeholder="비밀번호를 입력해주세요" | ||
| onChange={onChange} | ||
| value={signupValue.password} | ||
| /> | ||
| </div> | ||
| </li> | ||
| <li> | ||
| <div className={styles.title}>비밀번호 확인</div> | ||
| <div className={styles.content}> | ||
| <FormInput | ||
| type="password" | ||
| name="passwordConfirmation" | ||
| placeholder="비밀번호를 다시 한 번 입력해주세요" | ||
| onChange={onChange} | ||
| value={signupValue.passwordConfirmation} | ||
| /> | ||
| </div> | ||
| </li> | ||
| <li> | ||
| <button className="btn round block large" disabled={true}> | ||
| 회원가입 | ||
| </button> | ||
| </li> | ||
| <li> | ||
| <div className={styles.sns}> | ||
| <h3>간편 로그인하기</h3> | ||
| <ul> | ||
| <li> | ||
| <Link href=""> | ||
| <img | ||
| src="/assets/img/icon_google.svg" | ||
| alt="구글 간편로그인" | ||
| /> | ||
| </Link> | ||
| </li> | ||
| <li> | ||
| <Link href=""> | ||
| <img | ||
| src="/assets/img/icon_kakao.svg" | ||
| alt="카카오 간편로그인" | ||
| /> | ||
| </Link> | ||
| </li> | ||
| </ul> | ||
| </div> | ||
| </li> | ||
| <li> | ||
| <div className={styles.link}> | ||
| <p> | ||
| 이미 회원이신가요? <Link href="/login">로그인</Link> | ||
| </p> | ||
| </div> | ||
| </li> | ||
| </ul> | ||
| </form> | ||
| </div> | ||
| ); | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,59 @@ | ||
| .login_wrap { | ||
| max-width: 640px; | ||
| width: 100%; | ||
| margin: 0 auto; | ||
| } | ||
| .logo { | ||
| margin-bottom: 40px; | ||
| text-align: center; | ||
| } | ||
| .login_list { | ||
| } | ||
| .login_list > li { | ||
| } | ||
| .login_list > li + li { | ||
| margin-top: 24px; | ||
| } | ||
| .login_list > li .title { | ||
| margin-bottom: 16px; | ||
| font-size: 18px; | ||
| font-weight: 700; | ||
| } | ||
| .login_list > li .content { | ||
| } | ||
| .login_list > li .sns { | ||
| padding: 16px 23px; | ||
| background-color: #e6f2ff; | ||
| border-radius: 8px; | ||
| display: flex; | ||
| align-items: center; | ||
| justify-content: space-between; | ||
| } | ||
| .login_list > li .sns h3 { | ||
| font-size: 16px; | ||
| font-weight: 500; | ||
| line-height: 1; | ||
| } | ||
| .login_list > li .sns ul { | ||
| display: flex; | ||
| align-items: center; | ||
| } | ||
| .login_list > li .sns ul > li { | ||
| } | ||
| .login_list > li .sns ul > li + li { | ||
| margin-left: 16px; | ||
| } | ||
| .login_list > li .sns ul > li img { | ||
| height: 42px; | ||
| } | ||
| .login_list > li .link > p { | ||
| text-align: center; | ||
| font-size: 14px; | ||
| font-weight: 500; | ||
| line-height: 1.7142; | ||
| } | ||
| .login_list > li .link p > a { | ||
| color: #3182f6; | ||
| text-decoration: underline; | ||
| text-underline-offset: 3px; | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
이렇게props를 넘긴다면 보다 확장성 있겠죠?