From 29ff09a8d68de0ca1ca540af258e47afd2e81c12 Mon Sep 17 00:00:00 2001 From: ByungCheol Date: Sun, 28 Jun 2026 18:26:16 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20=EB=82=B4=20=EA=B8=80=C2=B7=EB=8C=93?= =?UTF-8?q?=EA=B8=80=20=EB=AA=A8=EC=95=84=EB=B3=B4=EA=B8=B0=20=ED=99=94?= =?UTF-8?q?=EB=A9=B4=20+=20=EC=82=AC=EC=9D=B4=EB=93=9C=EB=B0=94=20?= =?UTF-8?q?=EB=A9=94=EB=89=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - MyBoardView(탭: 내 글/내 댓글, 페이징, 글로 이동), /my-board 라우트 - 사이드바 게시판 영역에 내 글·댓글 링크, 헤더 타이틀 Co-Authored-By: Claude Opus 4.8 --- src/api/boardApi.js | 7 + src/components/layout/AppHeader.vue | 1 + src/components/layout/AppSidebar.vue | 4 + src/router/index.js | 6 + src/views/board/MyBoardView.vue | 209 +++++++++++++++++++++++++++ 5 files changed, 227 insertions(+) create mode 100644 src/views/board/MyBoardView.vue diff --git a/src/api/boardApi.js b/src/api/boardApi.js index 4700ff5..65cd1a2 100644 --- a/src/api/boardApi.js +++ b/src/api/boardApi.js @@ -17,6 +17,13 @@ export const boardApi = { get(id) { return http.get(`/board/posts/${id}`) }, + // 내 글/댓글 모아보기 + myPosts({ page = 1, size = 10 } = {}) { + return http.get('/board/my/posts', { params: { page, size } }) + }, + myComments({ page = 1, size = 10 } = {}) { + return http.get('/board/my/comments', { params: { page, size } }) + }, create(payload) { return http.post('/board/posts', payload) }, diff --git a/src/components/layout/AppHeader.vue b/src/components/layout/AppHeader.vue index eb29fa0..9cf0e80 100644 --- a/src/components/layout/AppHeader.vue +++ b/src/components/layout/AppHeader.vue @@ -23,6 +23,7 @@ const TITLES = { 'account-categories': '분류 관리', 'account-budget': '예산 설정', 'account-tags': '태그 관리', + 'my-board': '내 글·댓글', users: '회원 관리', 'admin-tags': '태그 관리(관리자)', 'admin-default-categories': '기본 분류 설정', diff --git a/src/components/layout/AppSidebar.vue b/src/components/layout/AppSidebar.vue index 430b86e..4d2dbba 100644 --- a/src/components/layout/AppSidebar.vue +++ b/src/components/layout/AppSidebar.vue @@ -85,6 +85,10 @@ const icons = { {{ b.label }} 🔒 + + + 내 글·댓글 + diff --git a/src/router/index.js b/src/router/index.js index f97770b..bd63d41 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -59,6 +59,12 @@ const router = createRouter({ component: () => import('../views/board/BoardListView.vue'), meta: { requiresAuth: true }, }, + { + path: '/my-board', + name: 'my-board', + component: () => import('../views/board/MyBoardView.vue'), + meta: { requiresAuth: true }, + }, { path: '/board/:category(community|saving|tips)/write', name: 'board-write', diff --git a/src/views/board/MyBoardView.vue b/src/views/board/MyBoardView.vue new file mode 100644 index 0000000..b4913c5 --- /dev/null +++ b/src/views/board/MyBoardView.vue @@ -0,0 +1,209 @@ + + + + +