From 2b6e1e308555e48a04649a09c49cba5dc7082075 Mon Sep 17 00:00:00 2001 From: Mayreeel Date: Sat, 1 Jul 2023 21:59:14 +0900 Subject: [PATCH 1/2] =?UTF-8?q?feat=20:=20=EC=83=81=EC=84=B8=20=ED=8E=98?= =?UTF-8?q?=EC=9D=B4=EC=A7=80=20=EC=9E=91=EC=84=B1=EC=9E=90=20=ED=91=9C?= =?UTF-8?q?=EC=8B=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/components/NavBar.tsx | 2 +- frontend/src/pages/ReadingPage.tsx | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/frontend/src/components/NavBar.tsx b/frontend/src/components/NavBar.tsx index ae3a5e4b..69b5f118 100644 --- a/frontend/src/components/NavBar.tsx +++ b/frontend/src/components/NavBar.tsx @@ -3,7 +3,7 @@ import { useNavigate } from 'react-router-dom'; import { useRecoilState } from 'recoil'; import WriteIcon from '../assets/image/pencil-square.svg'; -import ProfileIcon from '../assets/image/ProfileIcon.svg'; +import ProfileIcon from '../assets/image/profileIcon.svg'; import { persistTokenState, refreshState, searchTextState } from '../Recoil'; function NavBar() { diff --git a/frontend/src/pages/ReadingPage.tsx b/frontend/src/pages/ReadingPage.tsx index 89bbd03f..63310394 100644 --- a/frontend/src/pages/ReadingPage.tsx +++ b/frontend/src/pages/ReadingPage.tsx @@ -5,6 +5,7 @@ import { useNavigate, useParams } from 'react-router-dom'; import { useRecoilState, useRecoilValue } from 'recoil'; import gptIcon from '../assets/image/gptIcon.svg'; +import ProfileIcon from '../assets/image/profileIcon.svg'; import NavBar from '../components/NavBar'; import QuillWrtten from '../components/QuillWritten'; import RenderModal from '../components/RenderModal'; @@ -39,6 +40,8 @@ function ReadingPage() { const params = useParams(); const [isOpenModal, setOpenModal] = useState(false); + const [nickname, setNickname] = useState(''); + const [createdAt, setCreatedAt] = useState(''); const onClickToggleModal = useCallback(() => { setOpenModal(!isOpenModal); @@ -70,6 +73,9 @@ function ReadingPage() { setSelectedStack(res.data.data.techTags); setContents(res.data.data.content); setReadReply(res.data.data.commentsList); + setNickname(res.data.data.member.nickname); + setCreatedAt(res.data.data.createdAt); + console.log(res.data); } catch (error) { if (axios.isAxiosError(error)) { if ( @@ -174,6 +180,13 @@ function ReadingPage() {
{title}
+
+ ProfileIcon + {nickname} + +   | {createdAt.slice(0, 10)} + +
한줄 소개 From 54892c680d1d33f59a3f8c538c1f6fde2c7f7078 Mon Sep 17 00:00:00 2001 From: Mayreeel Date: Sun, 2 Jul 2023 01:22:34 +0900 Subject: [PATCH 2/2] =?UTF-8?q?feat=20:=20user=20=EA=B2=80=EC=83=89=20?= =?UTF-8?q?=EA=B8=B0=EB=8A=A5=20=EA=B5=AC=ED=98=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/App.tsx | 10 ++ frontend/src/assets/image/searchIcon.png | Bin 0 -> 55643 bytes frontend/src/components/NavBar.tsx | 43 ++++++-- frontend/src/pages/MainPage.tsx | 47 +++------ frontend/src/pages/ReadingPage.tsx | 5 +- frontend/src/pages/SearchProjectPage.tsx | 89 ++++++++++++++++ frontend/src/pages/SearchUserPage.tsx | 124 +++++++++++++++++++++++ 7 files changed, 272 insertions(+), 46 deletions(-) create mode 100644 frontend/src/assets/image/searchIcon.png create mode 100644 frontend/src/pages/SearchProjectPage.tsx create mode 100644 frontend/src/pages/SearchUserPage.tsx diff --git a/frontend/src/App.tsx b/frontend/src/App.tsx index d1aab443..ff27eac8 100644 --- a/frontend/src/App.tsx +++ b/frontend/src/App.tsx @@ -15,6 +15,8 @@ const ModifyingPage = lazy(() => import('./pages/ModifyingPage')); const ErrorPage = lazy(() => import('./pages/ErrorPage')); const SigninPage = lazy(() => import('./pages/SigninPage')); const SignupPage = lazy(() => import('./pages/SignupPage')); +const SearchProjectPage = lazy(() => import('./pages/SearchProjectPage')); +const SearchUserPage = lazy(() => import('./pages/SearchUserPage')); const queryClient = new QueryClient(); @@ -32,6 +34,14 @@ function App() { } /> } /> } /> + } + /> + } + /> } /> diff --git a/frontend/src/assets/image/searchIcon.png b/frontend/src/assets/image/searchIcon.png new file mode 100644 index 0000000000000000000000000000000000000000..86f8d1a51266e8df72bf4024d8f238d03074e254 GIT binary patch literal 55643 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 literal 0 HcmV?d00001 diff --git a/frontend/src/components/NavBar.tsx b/frontend/src/components/NavBar.tsx index 69b5f118..2ef8658b 100644 --- a/frontend/src/components/NavBar.tsx +++ b/frontend/src/components/NavBar.tsx @@ -4,6 +4,7 @@ import { useRecoilState } from 'recoil'; import WriteIcon from '../assets/image/pencil-square.svg'; import ProfileIcon from '../assets/image/profileIcon.svg'; +import SearchIcon from '../assets/image/searchIcon.png'; import { persistTokenState, refreshState, searchTextState } from '../Recoil'; function NavBar() { @@ -52,6 +53,17 @@ function NavBar() { navigate('/my'); } + const handleSearch = () => { + if (searchText === '' || searchText === '@') { + navigate('/'); + } else if (searchText.charAt(0) === '@') { + const username = searchText.substring(1); + navigate(`/searchUser/${username}`); + } else { + navigate(`/searchProject/${searchText}`); + } + }; + return (
{/* 로고 */} @@ -71,14 +83,29 @@ function NavBar() { {/* 검색창 */} - +
+ { + if (e.key === 'Enter') { + handleSearch(); + } + }} + /> + +
{accessToken || persistToken ? (
- {searchText === '' ? ( - <> - {data.pages.map((group, i) => ( -
- {group.map((item: DataObject) => ( -
- -
- ))} + {data.pages.map((group, i) => ( +
+ {group.map((item: DataObject) => ( +
+
))} - {hasNextPage && isFetchingNextPage && ( - Loading more... - )} - - ) : ( -
- {data.pages - .flat() - .filter((x) => x.projectName.includes(searchText)) - .map((item) => ( -
- -
- ))}
- )} + ))} + {hasNextPage && isFetchingNextPage && Loading more...}
diff --git a/frontend/src/pages/ReadingPage.tsx b/frontend/src/pages/ReadingPage.tsx index 63310394..36a7d4b0 100644 --- a/frontend/src/pages/ReadingPage.tsx +++ b/frontend/src/pages/ReadingPage.tsx @@ -75,7 +75,6 @@ function ReadingPage() { setReadReply(res.data.data.commentsList); setNickname(res.data.data.member.nickname); setCreatedAt(res.data.data.createdAt); - console.log(res.data); } catch (error) { if (axios.isAxiosError(error)) { if ( @@ -183,8 +182,8 @@ function ReadingPage() {
ProfileIcon {nickname} - -   | {createdAt.slice(0, 10)} + +   |  {createdAt.slice(0, 10)}
diff --git a/frontend/src/pages/SearchProjectPage.tsx b/frontend/src/pages/SearchProjectPage.tsx new file mode 100644 index 00000000..8f4dcbf1 --- /dev/null +++ b/frontend/src/pages/SearchProjectPage.tsx @@ -0,0 +1,89 @@ +import axios from 'axios'; +import { useEffect, useState } from 'react'; +import { useNavigate, useParams } from 'react-router-dom'; + +import WriteIcon from '../assets/image/pencil-square.svg'; +import Banner from '../components/Banner'; +import NavBar from '../components/NavBar'; +import ProjectCard from '../components/ProjectCard'; + +interface DataObject { + id: number; + createdAt: string; + projectName: string; + description: string; + techTags: string[]; + thumbNail: string; +} + +function SearchProjectPage() { + const [data, setData] = useState([]); // 데이터를 담을 state 선언 + const params = useParams(); // react-router-dom useParams 사용 선언 + + const navigate = useNavigate(); // react-router-dom useNavigate 사용 선언 + + function toWrite() { + // react-router-dom을 이용한 글쓰기 페이지로 이동 함수 + navigate('/write'); + } + + async function getData() { + try { + const res = await axios.get( + 'http://localhost:8080/api/v1/projects/search', + { + params: { projectName: params.projectName }, + }, + ); + setData(res.data.data); + } catch (error) { + console.log(error); + alert('검색 결과가 없습니다.'); + navigate('/'); + } + } + + useEffect(() => { + getData(); + }, [params]); + + return ( +
+ + + +
+ {/* 프로젝트 공유 버튼 */} + + +
+ {/* All */} +
+
+
+ {data.map((item) => ( +
+ +
+ ))} +
+
+
+
+ ); +} + +export default SearchProjectPage; diff --git a/frontend/src/pages/SearchUserPage.tsx b/frontend/src/pages/SearchUserPage.tsx new file mode 100644 index 00000000..0618829c --- /dev/null +++ b/frontend/src/pages/SearchUserPage.tsx @@ -0,0 +1,124 @@ +import axios from 'axios'; +import { useEffect, useState } from 'react'; +import { useNavigate, useParams } from 'react-router-dom'; +import { useRecoilValue } from 'recoil'; +import { v4 as uuidv4 } from 'uuid'; + +import WriteIcon from '../assets/image/pencil-square.svg'; +import ProfileIcon from '../assets/image/profileIcon.svg'; +import Banner from '../components/Banner'; +import NavBar from '../components/NavBar'; +import { persistTokenState } from '../Recoil'; + +interface DataObject { + nickname: string; + email: string; +} + +function SearchUserPage() { + const [data, setData] = useState([]); // 데이터를 담을 state 선언 + const params = useParams(); // react-router-dom useParams 사용 선언 + const accessToken = sessionStorage.getItem('accessToken'); + const persistToken = useRecoilValue(persistTokenState); + const [hoveredEmail, setHoveredEmail] = useState(''); + + function handleMouseEnter(email: string) { + setHoveredEmail(email); + } + + function handleMouseLeave() { + setHoveredEmail(''); + } + + const navigate = useNavigate(); // react-router-dom useNavigate 사용 선언 + + function toWrite() { + // react-router-dom을 이용한 글쓰기 페이지로 이동 함수 + navigate('/write'); + } + + async function getData() { + try { + const res = await axios.get('http://localhost:8080/api/v1/members', { + params: { nickname: params.userName }, + headers: { + Authorization: `Bearer ${accessToken || persistToken}`, + }, + }); + if (res.data.data.length === 0) { + setData([{ nickname: '검색 결과가 없습니다.', email: '' }]); + } else { + setData(res.data.data); + } + } catch (error) { + console.log(error); + alert('검색 결과가 없습니다.'); + navigate('/'); + } + } + + useEffect(() => { + getData(); + }, [params]); + + return ( +
+ + + +
+ {/* 프로젝트 공유 버튼 */} + + +
+ {/* All */} +
+
+
+ {data.map((item) => ( +
+ {item.nickname === '검색 결과가 없습니다.' ? ( +
+ {item.nickname} +
+ ) : ( +
handleMouseEnter(item.email)} + onMouseLeave={handleMouseLeave} + > + ProfileIcon + + {item.nickname} + {hoveredEmail === item.email && ( + + {item.email} + + )} + +
+ )} +
+ ))} +
+
+
+
+ ); +} + +export default SearchUserPage;